{"id":6218,"date":"2017-11-29T11:44:58","date_gmt":"2017-11-29T03:44:58","guid":{"rendered":"https:\/\/sdeno.com:80\/?p=6218"},"modified":"2017-11-30T09:16:12","modified_gmt":"2017-11-30T01:16:12","slug":"%e8%b7%a8%e5%9f%9f%e8%af%b7%e6%b1%82%e5%85%bc%e5%ae%b9ie%e6%b5%8f%e8%a7%88%e5%99%a8-reqwest-js","status":"publish","type":"post","link":"https:\/\/sdeno.com\/?p=6218","title":{"rendered":"\u8de8\u57df\u8bf7\u6c42\u517c\u5bb9ie\u6d4f\u89c8\u5668\u2014\u2014reqwest.js"},"content":{"rendered":"<p>js \u517c\u5bb9ie6\/7\/8\u8de8\u57df \u8de8\u57df<\/p>\n<p>\u4e00\u822c\u6d89\u53ca\u5230\u8de8\u57df\u65f6\uff0c\u6211\u4eec\u90fd\u4f1a\u4f7f\u7528jquery\u91cc\u9762ajax\u7684jsonp\uff0c\u4f46\u662f\u9047\u5230ie\u6d4f\u89c8\u5668\u5c31\u4e0d\u517c\u5bb9\u4e86\u3002\u8fd9\u91cc\u63a8\u8350\u4f7f\u7528reqwest.js\uff0c\u5bf9\u6d4f\u89c8\u5668\u7684\u517c\u5bb9\u6027\u5f88\u597d\u652f\u6301xmlHttpRequest, JSONP, CORS, \u548c CommonJS\u3002<\/p>\n<p>\u540c\u65f6\u4e5f\u80fd\u5728node.j\u540e\u53f0\u548c\u524d\u7aef\u4e0a\u4f7f\u7528<\/p>\n<p>IE6+<br \/>\nChrome 1+<br \/>\nSafari 3+<br \/>\nFirefox 1+<br \/>\nOpera<\/p>\n<p>\u5177\u4f53\u6ca1\u6d4b\u8bd5\u8fd9\u4e48\u591a\u6d4f\u89c8\u5668\uff0c\u4f46\u81f3\u5c11\u6ee1\u8db3\u4e86ie8,\u8de8\u57df\u4ee5\u53ca\u5404\u79cd\u5e38\u7528\u529f\u80fd\u3002<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\">\u8de8\u57df<\/span><\/p>\n<p>\u4f7f\u7528\u7684\u662fjsonp,\u517c\u5bb9\u6bd4\u8f83\u8001\u7684\u6d4f\u89c8\u5668\u5982\uff0cie6\/7<\/p>\n<pre>\/\/\u5ba2\u670d\u7aef\r\nreqwest({\r\n    url: 'https:\/\/sdeno.com\/a.php'\r\n    , method: 'get'  \/\/jsonp\u7528\u7684\u5c31\u662fget\u65b9\u5f0f\u8de8\u57df\u7684,\u6539\u6210post\u4e5f\u4f1a\u9ed8\u8ba4\u662fget\r\n    ,type: 'jsonp'\r\n    , jsonpCallbackName: 'ni'\r\n\r\n    , success: function (resp) {\r\n        document.title=JSON.stringify(resp)\r\n    }\r\n})<\/pre>\n<p>&nbsp;<\/p>\n<pre>\/\/\u670d\u52a1\u5668\u7aef   a.php\r\n&lt;?php\r\n $data='[{name:\"chenge\"},{age:24}]'; \r\n $str='ni('.$data.')';\r\n echo $str;\r\n?&gt;<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p>\u4ee5\u4e0b\u4f7f\u7528CORS\u65b9\u6cd5\u8de8\u57df\uff0c\u652f\u6301\u8de8\u57df\u643a\u5e26cookies\uff0c\u652f\u6301\u5168\u90e8\u65b9\u5f0f\u8bf7\u6c42\uff0cIE8\u4ee5\u4e0a\u6d4f\u89c8\u5668\u4f7f\u7528new XDomainRequest()\uff0c\u5176\u4ed6\u6d4f\u89c8\u5668\u4f7f\u7528new XMLHttpRequest()<\/p>\n<pre>\/\/\u5ba2\u6237\u7aef\r\nreqwest({\r\n url: 'http:\/\/45.32.197.68\/a.php' \/\/\u53ef\u4ee5\u662f\u63a5\u6536\u6570\u636e\u7684\u5730\u5740\uff0c\u4e5f\u53ef\u4ee5\u662f\u8981\u53d1\u9001\u7ed9\u670d\u52a1\u5668\u6570\u636e\u7684\u5730\u5740\r\n , type: 'json'\r\n , method: 'post' \r\n , contentType: 'application\/json'\r\n , crossOrigin: true\r\n , withCredentials: true \/\/cookies\u8de8\u57df\u8981\u8bbe\u7f6etrue,\u4f46\u662fAccess-Control-Allow-Origin:\u7684\u503c\u5c31\u4e0d\u80fd\u662f*\uff0c\u4e0d\u7136\u4f1a\u62a5\u9519\u3002\r\n , error: function (err) { }\r\n , success: function (resp) {\r\n     qwery('#content').html(resp.content)\r\n }\r\n})<\/pre>\n<p>&nbsp;<\/p>\n<p>\u5ba2\u6237\u7aef\u4f7f\u7528cors\u6765\u5b9e\u73b0\u8de8\u57df\uff0c\u670d\u52a1\u5668\u4e5f\u8981\u8bbe\u7f6e\u3002<\/p>\n<pre>&lt;?php\r\nif(isset($_SERVER[\"HTTP_ORIGIN\"])) {\r\n header('Access-Control-Allow-Origin:'.$_SERVER[\"HTTP_ORIGIN\"]); \r\n}\r\nheader('Access-Control-Allow-Methods:OPTIONS, GET, POST');\r\nheader('Access-Control-Allow-Headers:x-requested-with');\r\nheader('Access-Control-Max-Age:86400'); \r\nheader('Access-Control-Allow-Origin:'.$_SERVER['HTTP_ORIGIN']);\r\nheader('Access-Control-Allow-Credentials:true');\r\nheader('Access-Control-Allow-Methods:GET, POST, PUT, DELETE, OPTIONS');\r\nheader('Access-Control-Allow-Headers:x-requested-with,content-type');\r\nheader('Access-Control-Allow-Headers:Origin, No-Cache, X-Requested-With, If-Modified-Since, Pragma, Last-Modified, Cache-Control, Expires, Content-Type, X-E4M-With');\r\n\r\n$data='[{\"name\":\"chenge\"},{\"age\":\"24\"}]'; \r\necho $data;\r\n?&gt;<\/pre>\n<p>\u5173\u4e8e\uff1acors\u8de8\u57df\u8bf7\u6c42\u7684\u670d\u52a1\u5668\u914d\u7f6e\u53c2\u8003\u5730\u5740\uff1a<a href=\"http:\/\/www.jianshu.com\/p\/552daaf2869c\" target=\"_blank\" rel=\"noopener\">http:\/\/www.jianshu.com\/p\/552daaf2869c<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\">post\/get\u65b9\u5f0f\u63d0\u4ea4\u6570\u636e\u7ed9\u670d\u52a1\u5668<\/span><\/p>\n<pre><span class=\"pl-en\">\/\/post\u63d0\u4ea4\u6570\u636e\r\nreqwest<\/span>({\r\n    url<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>path\/to\/html<span class=\"pl-pds\">'  \/\/\u670d\u52a1\u5668\u63a5\u6536\u6570\u636e\u5730\u5740 \r\n  , type: 'json'  \/\/\u5c06\u6570\u636e\u4ee5json\u683c\u5f0f\u53d1\u7ed9\u670d\u52a1\u5668<\/span><\/span>\r\n  , method<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>post<span class=\"pl-pds\">'<\/span><\/span>\r\n  , data<span class=\"pl-k\">:<\/span> { foo<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>bar<span class=\"pl-pds\">'<\/span><\/span>, baz<span class=\"pl-k\">:<\/span> <span class=\"pl-c1\">100<\/span> } \/\/\u8981\u53d1\u7ed9\u670d\u52a1\u5668\u7684\u6570\u636e\r\n  , <span class=\"pl-en\">success<\/span><span class=\"pl-k\">:<\/span> <span class=\"pl-k\">function<\/span> (<span class=\"pl-smi\">resp<\/span>) {\r\n      <span class=\"pl-en\">qwery<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>#content<span class=\"pl-pds\">'<\/span><\/span>).<span class=\"pl-en\">html<\/span>(resp)\r\n    }\r\n})\r\n\r\n\r\n<span class=\"pl-en\">\/\/get\u63d0\u4ea4\u6570\u636e<\/span>\r\n<span class=\"pl-en\">reqwest<\/span>({\r\n    url<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>path\/to\/html<span class=\"pl-pds\">'\r\n  , type: 'json'<\/span><\/span>\r\n  , method<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>get<span class=\"pl-pds\">'<\/span><\/span>\r\n  , data<span class=\"pl-k\">:<\/span> [ { name<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>foo<span class=\"pl-pds\">'<\/span><\/span>, value<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>bar<span class=\"pl-pds\">'<\/span><\/span> }, { name<span class=\"pl-k\">:<\/span> <span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>baz<span class=\"pl-pds\">'<\/span><\/span>, value<span class=\"pl-k\">:<\/span> <span class=\"pl-c1\">100<\/span> } ]  \/\/http:\/\/localhost:3001\/xxx1?foo=bar&amp;baz=100\r\n         \/\/\u6216\u8005{ foo: 'bar', baz: 100 }\r\n  , <span class=\"pl-en\">success<\/span><span class=\"pl-k\">:<\/span> <span class=\"pl-k\">function<\/span> (<span class=\"pl-smi\">resp<\/span>) {\r\n      <span class=\"pl-en\">qwery<\/span>(<span class=\"pl-s\"><span class=\"pl-pds\">'<\/span>#content<span class=\"pl-pds\">'<\/span><\/span>).<span class=\"pl-en\">html<\/span>(resp)\r\n    }\r\n})<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\">\u56de\u8c03<\/span><\/p>\n<pre><span class=\"pl-en\">reqwest.({})<\/span>\r\n .then(function (resp) {  \/\/\u6210\u529f\u56de\u8c03\r\n    qwery('#content').html(resp.content)\r\n })\r\n .fail(function (err, msg) {  \/\/\u5931\u8d25\u56de\u8c03\r\n    qwery('#errors').html(msg)\r\n })\r\n .always(function (resp) {  \/\/\u603b\u662f\u56de\u8c03\r\n    qwery('#hide-this').hide()\r\n })<\/pre>\n<p>&nbsp;<\/p>\n<p>&nbsp;<\/p>\n<p><span style=\"color: #ff0000;\">\u5bf9IE6\/7\u7684\u517c\u5bb9<\/span><\/p>\n<pre>&lt;script&gt;\r\n(function () {\r\n  if (!window.JSON) {\r\n    document.write('&lt;scr' + 'ipt src=\"http:\/\/cdnjs.cloudflare.com\/ajax\/libs\/json3\/3.3.2\/json3.min.js\"&gt;&lt;\\\/scr' + 'ipt&gt;')\r\n  }\r\n}());\r\n&lt;\/script&gt;<\/pre>\n<p><a href=\"https:\/\/sdeno.com\/wp-content\/uploads\/2017\/11\/reqwest.min_.js\">reqwest.min<\/a><\/p>\n<p>\u53c2\u8003\uff1a<a href=\"http:\/\/www.ruanyifeng.com\/blog\/2016\/04\/cors.html\" target=\"_blank\" rel=\"noopener\">http:\/\/www.ruanyifeng.com\/blog\/2016\/04\/cors.html<\/a><\/p>\n<p><a href=\"https:\/\/www.npmjs.com\/package\/reqwest\" target=\"_blank\" rel=\"noopener\">https:\/\/www.npmjs.com\/package\/reqwest<\/a><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" src=\"http:\/\/dict.youdao.com\/dictvoice?audio=sh&amp;type=1\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n<p><audio style=\"display: none;\" controls=\"controls\"><\/audio><\/p>\n","protected":false},"excerpt":{"rendered":"<p>js \u517c\u5bb9ie6\/7\/8\u8de8\u57df \u8de8\u57df \u4e00\u822c\u6d89\u53ca\u5230\u8de8\u57df\u65f6\uff0c\u6211\u4eec\u90fd\u4f1a\u4f7f\u7528jquery\u91cc\u9762ajax\u7684jsonp\uff0c\u4f46\u662f\u9047 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-6218","post","type-post","status-publish","format-standard","hentry","category-11"],"_links":{"self":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts\/6218","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=6218"}],"version-history":[{"count":0,"href":"https:\/\/sdeno.com\/index.php?rest_route=\/wp\/v2\/posts\/6218\/revisions"}],"wp:attachment":[{"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=6218"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6218"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sdeno.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6218"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}