httpx.js 是一个简单的 JavaScript HTTP/RESTful 请求库。



主要方法

GET

POST

PUT

PATCH

DELETE

Other

JSON

JSONP

getScript

兼容情况

Firefox 4.0+

Chrome 7+

IE 9+

Opera 11.60+

Safari 5.1.4+

使用方法

get|post|put|patch|delete|json(alias getJSON)(url, [data], [callback], [error]);

GET:

httpx.get("http://localhost/http-test/get.php?foo=Level1&bar=XHR&zh=中文", function(data) {
    console.log(data, this);
}, function(method, url) {
    console.error("Custom Error", method, url, this.status, this.statusText);
});

POST:

httpx.post("http://localhost/http-test/post.php?edfd=eedfd&dfsdf=ere", {
    a : 12,
    b : "bbbb",
    c : 123489
}, function(data) {
    console.log(data, this);
});

PUT:

httpx.put("http://localhost/http-test/put.php?edfd=eedfd&dfsdf=ere", {
    a : 12,
    b : "bbbb",
    c : 123489
}, function(data) {
    console.log(data, this);
});

DELETE:

httpx.delete("http://localhost/http-test/delete.php?edfd=eedfd&dfsdf=ere", {
    a : 12,
    b : "bbbb",
    c : 123489
}, function(data) {
    console.log(data, this);
});
JSON(getJSON):

// Alias getJSON(), like jQuery
httpx.json("http://localhost/http-test/get-json.php?temp="+(new Date).getTime(), {
    test : 123
}, function(json) {
    console.log("get json =>", json);
});

JSONP:

//jsonp(url, [data], [callback], [callbackName]); // callbackName for query string name

httpx.jsonp("http://192.168.1.2/http-test/jsonp.php?temp="+(new Date).getTime(), {
    test : 123
}, function(json) {
    console.log("jsonp =>", json);
}, "callback");

getScript:

httpx.getScript("http://192.168.1.2/http-test/test.js", function() {
    test();
});

选项

{
    async         : true,
    timeout       : 3000,
    method        : "GET",
    url           : "",
    data          : "",
    dataType      : "text",
    headers       : {},
    contentType   : "text/plain; charset=UTF-8",
    jsonp         : "callback",    // for query string
    success       : function() {},
    error         : function(method, url) {},
    ontimeout     : function(method, url) {}
}

httpx.request({
    url : "http://localhost/http-test/head.php",
    method : "HEAD",  // Custom http method
    headers : {},  // Custom http headers
    success : function(data) {
        console.log(data);
    }
});

httpx.get({
    url : "http://localhost/http-test/get.php?foo=bar",
    headers : {
        "xxxxxxx" : "xxxxx"
    },
    success : function(data) {
        console.log(data);
    }
});

httpx.post({
    url : "http://localhost/http-test/post.php?foo=bar",
    data : {
        id : 123,
        title : "xxxxx"
    },
    headers : {
        "xxxxxxx" : "xxxxx"
    },
    success : function(data) {
        console.log(data);
    }
});

// put/patch/delete/json ...

开源地址:http://git.oschina.net/pandao/httpx.js
文档参考:http://www.thinksaas.cn/kaiyuan/ruanjian/27460/

最后由 巴巴爸爸 编辑于2017年07月03日 12:21