Home > Web Front-end > JS Tutorial > body text

Detailed explanation of the steps to obtain data across domains using jQuery using ajax

php中世界最好的语言
Release: 2018-04-24 16:54:27
Original
1564 people have browsed it

This time I will bring you a detailed explanation of the steps for jQuery to use ajax to obtain cross-domain data. What are the precautions for jQuery to use ajax to obtain cross-domain data. The following is a practical case, let's take a look.

A simple example of jQuery using ajax to obtain data across domains

var webMethod = "http://localhost:54473/Service1.asmx/HelloWorld"; 
    jQuery.support.cors = true;
    //之前没有加这句老是提示no transport,我没去深想。
    $.ajax
    ({
      
      type: "POST",
      contentType: "application/x-www-form-urlencoded",
      dataType: "html",
      url: "http://www.*****.com", //这里是网址
      success:function(data){alert(data);},
      timeout:30000, 
      error: function (XMLHttpRequest, textStatus, errorThrown) {
      alert(errorThrown);
      }
    });
Copy after login

ParametersoptionsType: Object

Can select. AJAX request settings. All options are optional.

async

Type: Boolean

Default value: true. By default, all requests are asynchronous. If you need to send synchronous requests, set this option to false.

Note that synchronous requests will lock the browser, and other user operations must wait for the request to be completed before they can be executed.

beforeSend(XHR)

Type: Function

Function that can modify the XMLHttpRequest object before sending the request, such as adding a custom HTTP header.

The XMLHttpRequest object is the only parameter.

This is an Ajax event. If false is returned, this ajax request can be canceled.

cache

Type: Boolean

Default value: true, the default is false when dataType is script and jsonp. Set to false to not cache this page.

New features in jQuery 1.2.

complete(XHR, TS)

Type: Function

After the request is completed

Callback function (called after the request is successful or failed).

Parameters: XMLHttpRequest object and a string describing the request type.

This is an Ajax event.

contentType

Type: String

Default value: "application/x-www-form-urlencoded". Content encoding type when sending information to the server.

The default value is suitable for most situations. If you explicitly pass a content-type to $.ajax() then it will definitely be sent to the server (even if there is no data to send).

context

Type: Object

This object is used to set the context of Ajax-related callback functions. In other words, let this in the callback function point to this object (if this parameter is not set, then this will point to the options parameter passed when calling this AJAX request). For example, specifying a DOM element as the context parameter will set the context of the success callback function to this DOM element.

Like this:

$.ajax({ url: "test.html", context: document.body, success: function(){
    $(this).addClass("done");
   }});
Copy after login
data

Type: String

The data sent to the server. Will be automatically converted to request string format. Appended to the URL in GET requests. See the processData option description to disable this automatic conversion. Must be in Key/Value format. If it is an array, jQuery will automatically assign the same name to different values. For example, {foo:["bar1", "bar2"]} is converted to '&foo=bar1&foo=bar2'.

dataFilter

Type: Function

Function for preprocessing the original data returned by Ajax. Provide two parameters, data and type: data is the original data returned by Ajax, and type is the dataType parameter provided when calling jQuery.ajax. The value returned by the function will be further processed by jQuery.

dataType

Type: String

The

data type expected to be returned by the server. If not specified, jQuery will automatically make intelligent judgments based on the MIME information of the HTTP package. For example, the XML MIME type is recognized as XML. In 1.4, JSON will generate a JavaScript object, and script will execute the script. The data returned by the server will then be parsed based on this value and passed to the callback function. Available values:

•"xml": Returns an XML document that can be processed with jQuery.

•"html": Return plain text HTML information; the included script tag will be executed when inserted into the dom.

•"script": Return plain text JavaScript code. Results are not automatically cached. Unless the "cache" parameter is set. Note: When making remote requests (not under the same domain), all POST requests will be converted into GET requests. (Because the DOM script tag will be used to load)

•"json": Return JSON data.

•"jsonp": JSONP format. When calling a function using JSONP form, such as "myurl?callback=?" jQuery will automatically replace ? with the correct function name to execute the callback function.

•"text": Return plain text string
error
Type: Function

Default value: Automatic judgment (xml or html). This function is called when the request fails.

has the following three parameters: XMLHttpRequest object, error message, (optional) captured exception object.

If an error occurs, the error message (the second parameter) may be "timeout", "error", "notmodified" and "parsererror" in addition to null.

This is an Ajax event.

global
Type: Boolean

Whether to trigger the global AJAX event. Default value: true. Setting to false will not trigger global AJAX events such as ajaxStart or ajaxStop which can be used to control different Ajax events.

ifModified
Type: Boolean

Get new data only when the server data changes. Default value: false. Use HTTP packet Last-Modified header information to determine. As of jQuery 1.4, it also checks the server-specified 'etag' to make sure the data has not been modified.

jsonp
Type: String

Override the name of the callback function in a jsonp request. This value is used to replace the "callback" part of the URL parameter in a GET or POST request such as {jsonp:'onJsonPLoad'} which will cause "onJsonPLoad=?" to be passed to the server.

jsonpCallback
Type: String

Specify a callback function name for jsonp request. This value will be used instead of the random function name automatically generated by jQuery. This is mainly used to allow jQuery to generate unique function names so that it is easier to manage requests and provide callback functions and error handling. You can also specify this callback function name when you want the browser to cache GET requests.

password
Type: String

Password used to respond to HTTP access authentication requests

processData
Type: Boolean

Default value: true. By default, the data passed in through the data option, if it is an object (technically speaking, as long as it is not a string), will be processed and converted into a query string to match the default content type "application/x-www-form-urlencoded" ". Set to false if you want to send DOM tree information or other information that you don't want to convert.

scriptCharset
Type: String

Only when the dataType is "jsonp" or "script" when requested, and the type is "GET" will it be used to force the charset to be modified. Usually only used when the local and remote content encodings are different.

success
Type: Function

The callback function after the request is successful.

Parameters: Data returned by the server and processed according to the dataType parameter; a string describing the status.

This is an Ajax event.

traditional
Type: Boolean

Set to true if you want to serialize data in the traditional way. Please refer to the jQuery.param method under the Tools category.

timeout
Type: Number

Set the request timeout (milliseconds). This setting overrides the global setting.

type
Type: String

Default value: "GET"). Request method ("POST" or "GET"), default is "GET". Note: Other HTTP request methods, such as PUT and DELETE can also be used, but are only supported by some browsers.

url
Type: String

Default value: Current page address. The address to send the request to.

username
Type: String

Username used to respond to HTTP access authentication requests.

xhr
Type: Function

Needs to return an XMLHttpRequest object. The default is ActiveXObject under IE and XMLHttpRequest otherwise. Used to override or provide an enhanced XMLHttpRequest object. This parameter was not available before jQuery 1.3.

I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!

Recommended reading:

5 years of summary experience of using Ajax

Summary of three methods for Ajax to achieve cross-domain access

Detailed analysis of Ajax usage skills in JS

The above is the detailed content of Detailed explanation of the steps to obtain data across domains using jQuery using ajax. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!