HTTP.js 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. //var URL = "http://120.77.56.190:9000";
  2. //var URL = "http://127.0.0.1:9000";
  3. import Define from '../common/Define'
  4. var URL = "http://api.boyin18.com";
  5. // var URL = "http://192.168.2.186/qpapi/public"
  6. var HTTP = cc.Class({
  7. extends: cc.Component,
  8. statics:{
  9. sessionId : 0,
  10. userId : 0,
  11. master_url:Define.GameHttpUrl,
  12. url:Define.GameHttpUrl,
  13. sendRequest : function(path,data,handler,extraUrl,meth){
  14. var xhr = cc.loader.getXMLHttpRequest();
  15. xhr.timeout = 5000;
  16. var str = "?";
  17. for(var k in data){
  18. if(str != "?"){
  19. str += "&";
  20. }
  21. str += k + "=" + data[k];
  22. }
  23. if(extraUrl == null){
  24. extraUrl = HTTP.url;
  25. }
  26. var requestURL = extraUrl + path + encodeURI(str);
  27. console.log("RequestURL:" + requestURL);
  28. if (meth == null) {
  29. meth = "GET"
  30. }
  31. xhr.open(meth,requestURL, true);
  32. xhr.setRequestHeader('Access-Control-Allow-Headers', '*');
  33. xhr.setRequestHeader('Content-type', 'application/ecmascript');
  34. xhr.setRequestHeader('Access-Control-Allow-Origin', '*');
  35. if (cc.sys.isNative){
  36. xhr.setRequestHeader("Accept-Encoding","gzip,deflate","text/html;charset=UTF-8");
  37. }
  38. xhr.onreadystatechange = function() {
  39. if(xhr.readyState === 4 && (xhr.status >= 200 && xhr.status < 300)){
  40. console.log("http res("+ xhr.responseText.length + "):" + xhr.responseText);
  41. try {
  42. var ret = JSON.parse(xhr.responseText);
  43. if(handler !== null){
  44. handler(ret);
  45. } /* code */
  46. } catch (e) {
  47. console.log("err:" + e);
  48. //handler(null);
  49. }
  50. finally{
  51. if(cc.vv && cc.vv.wc){
  52. // cc.vv.wc.hide();
  53. }
  54. }
  55. }
  56. };
  57. if(cc.vv && cc.vv.wc){
  58. //cc.vv.wc.show();
  59. }
  60. xhr.send();
  61. return xhr;
  62. },
  63. },
  64. });