The company wants to create an activity page, discover all interfaces in the process, and ajax requests cross domains. Here is a brief introduction to cross-domain and several solutions.
Due to the limitations of the same-origin policy implemented by the browser, XmlHttpRequest is only allowed to request resources from the current source (domain name, protocol, port), so AJAX is not allowed to cross domains. Here are three commonly used methods:
1. jsonp access
JSONP (JSON with Padding) is an unofficial protocol that allows Script tags to be integrated on the server side and returned to the client. , cross-domain access is achieved through javascript callback;
Implementation method
1)
<script> $.ajax({ url:url, dataType:'jsonp', data:'', jsonp:'callback', success:function(result) { }, }); </script>
2)
$.getJSON(url+"?callback=?", function(result) { });
Note: 1】jsonp can only Use get request, even if you use post request, it will be automatically converted to post for you;
2】jsonp can not only be used to obtain data, but also can be used to submit data.
2. damain method
When the main domain is the same and the subdomains are different, you can use this method to modify the domain name pointing so that they point to the same domain name. This method can only solve the problem. When the primary domain is the same but the secondary domain name is different, this method cannot be used for two unrelated URLs;
document.domain = 'a.com'
Note: In actual development, many people will debug the interface locally, localhost The domain name is completely different from the company's domain name, so the domain method cannot produce any effect. The solution is to modify the host file in the c drive, change the local address localhost to the company domain name or the company's second-level domain name, and then this The method is ready to use.
The following is the modified domain name pointing to:
#127.0.0.1 localhost
127.0.0.1 company.com
3, postMessage
PostMessage is One of the new features of h5. Since we are a company that makes h5 games, it is inevitable to nest iframes to facilitate data submission, etc.
It is assumed here that the Id of iframe is 'iframe';
In the js inside the iframe,
var message = 'date';<br>if (parent.document.getElementById(‘iframe‘)) { //捕获iframe var iframe = parent.document.getElementById(‘iframe').contentWindow; //发送消息 parent.postMessage(message, "*"); }
should be written. In the js outside the iframe, ## should be written. #
window.addEventListener('message',function(e){ },false);Then you can get the message data. Related recommendations:
Error solution to parsererror under ajax cross-domain request
JS implements Ajax cross-domain request flask response content
Examples explain the principle of Ajax cross-domain requests
The above is the detailed content of Ajax cross-domain perfect solution example sharing. For more information, please follow other related articles on the PHP Chinese website!

PHPsessionstrackuserdataacrossmultiplepagerequestsusingauniqueIDstoredinacookie.Here'showtomanagethemeffectively:1)Startasessionwithsession_start()andstoredatain$_SESSION.2)RegeneratethesessionIDafterloginwithsession_regenerate_id(true)topreventsessi

In PHP, iterating through session data can be achieved through the following steps: 1. Start the session using session_start(). 2. Iterate through foreach loop through all key-value pairs in the $_SESSION array. 3. When processing complex data structures, use is_array() or is_object() functions and use print_r() to output detailed information. 4. When optimizing traversal, paging can be used to avoid processing large amounts of data at one time. This will help you manage and use PHP session data more efficiently in your actual project.

The session realizes user authentication through the server-side state management mechanism. 1) Session creation and generation of unique IDs, 2) IDs are passed through cookies, 3) Server stores and accesses session data through IDs, 4) User authentication and status management are realized, improving application security and user experience.

Tostoreauser'snameinaPHPsession,startthesessionwithsession_start(),thenassignthenameto$_SESSION['username'].1)Usesession_start()toinitializethesession.2)Assigntheuser'snameto$_SESSION['username'].Thisallowsyoutoaccessthenameacrossmultiplepages,enhanc

Reasons for PHPSession failure include configuration errors, cookie issues, and session expiration. 1. Configuration error: Check and set the correct session.save_path. 2.Cookie problem: Make sure the cookie is set correctly. 3.Session expires: Adjust session.gc_maxlifetime value to extend session time.

Methods to debug session problems in PHP include: 1. Check whether the session is started correctly; 2. Verify the delivery of the session ID; 3. Check the storage and reading of session data; 4. Check the server configuration. By outputting session ID and data, viewing session file content, etc., you can effectively diagnose and solve session-related problems.

Multiple calls to session_start() will result in warning messages and possible data overwrites. 1) PHP will issue a warning, prompting that the session has been started. 2) It may cause unexpected overwriting of session data. 3) Use session_status() to check the session status to avoid repeated calls.

Configuring the session lifecycle in PHP can be achieved by setting session.gc_maxlifetime and session.cookie_lifetime. 1) session.gc_maxlifetime controls the survival time of server-side session data, 2) session.cookie_lifetime controls the life cycle of client cookies. When set to 0, the cookie expires when the browser is closed.


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SAP NetWeaver Server Adapter for Eclipse
Integrate Eclipse with SAP NetWeaver application server.

Atom editor mac version download
The most popular open source editor

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function

SublimeText3 English version
Recommended: Win version, supports code prompts!

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.
