123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192 |
- import { _decorator, Component, Node, sys, url } from 'cc';
- import { config } from './config';
- import { tools } from './tools';
- import { userDataManager } from './manager/userDataManager';
- import { SdkUtil } from './sdkUtil';
- const { ccclass, property } = _decorator;
- @ccclass('http')
- export class http {
- public static domain = config.debug?"https://zcapi.xwrun.com":"https://zcapi.hainanmlwl.com"
- public static static_domain = config.debug?"https://zcapi.xwrun.com":"https://zaoca.oss-cn-beijing.aliyuncs.com"
- public static statistics_domain = config.debug?"https://zcapi.xwrun.com":""
- public static post(url,opt, call_back,method:string='POST') {
- var xml = new XMLHttpRequest()
- let request_url = http.domain+url
- xml.open(method, request_url)
- xml.setRequestHeader('Content-Type', 'application/json');
- if(userDataManager.user_data!=null){
- xml.setRequestHeader('token',userDataManager.user_data.token);
- }
- if(opt==null){
- xml.send();
- }else{
- xml.send(JSON.stringify(opt));
- }
-
- // xml.send(opt);
- var array: String[] = ['loadstart', 'abort', 'error', 'load', 'loadend', 'timeout'];
- array.forEach(function (eventName) {
- xml[('on' + eventName) as 'onloadstart' | 'onabort' | 'onerror' | 'onload' | 'onloadend' | 'ontimeout'] = function () {
- // var str = '\nEvent : ' + eventName;
- var lstr = ""
- if (eventName === 'timeout') {
- lstr += '(timeout)';
- }
- else if (eventName === 'loadend') {
- lstr += '...loadend!';
- } else if (eventName === 'onerror') {
- }
- };
- });
- // Special event
- xml.onreadystatechange = function () {
- if (xml.readyState === 4 && xml.status >= 200) {
- call_back(null, xml.responseText);
- } else if (xml.status === 404) {
- call_back('404 page not found!', null);
- }
- };
- }
- public static get(url, call_back) {
- var xml = new XMLHttpRequest()
- let request_url = http.static_domain+url
- xml.open('GET', request_url)
- xml.setRequestHeader('Content-Type', 'application/json');
- xml.send();
- var array: String[] = ['loadstart', 'abort', 'error', 'load', 'loadend', 'timeout'];
- array.forEach(function (eventName) {
- xml[('on' + eventName) as 'onloadstart' | 'onabort' | 'onerror' | 'onload' | 'onloadend' | 'ontimeout'] = function () {
- // var str = '\nEvent : ' + eventName;
- var lstr = ""
- if (eventName === 'timeout') {
- lstr += '(timeout)';
- }
- else if (eventName === 'loadend') {
- lstr += '...loadend!';
- } else if (eventName === 'onerror') {
- }
- };
- });
- // Special event
- xml.onreadystatechange = function () {
- if (xml.readyState === 4 && xml.status >= 200) {
- call_back(null, xml.responseText);
- } else if (xml.status === 404) {
- call_back('404 page not found!', null);
- }
- };
- }
-
- public static uploadFile(url, filePath, formData, progress_call_back, call_back) {
- let success_cb = ((res)=>{
- // console.log(`uploadFile调用成功 ${res.data}`);
- if (res.statusCode === 200) {
- call_back(null,res.data)
- } else {
- call_back(res.statusCode,null)
- }
- })
- let fail_cb = ((err)=>{
- // console.log(`tt_uploadFile调用失败${err}`);
- call_back(err,null)
- })
- let progress_cb =((res)=>{
- // console.log('progress=',res.progress)
- if(progress_call_back) { progress_call_back(res.progress) }
- })
- let upload_url = http.domain + url
- let name = 'file'
- if(sys.platform == sys.Platform.BYTEDANCE_MINI_GAME) {
- let task = tt.uploadFile({
- url: upload_url,
- filePath: filePath,
- name: name,
- formData: formData,
- success(res) { success_cb(res) },
- fail(err) { fail_cb(err) },
- });
- task.onProgressUpdate((res) => { progress_cb(res) });
- }
- else if(sys.platform == sys.Platform.WECHAT_GAME) {
- if(SdkUtil.KS_GAME) {
- let task = ks.uploadFile({
- url: upload_url,
- filePath: filePath,
- name: name,
- formData: formData,
- success(res) { success_cb(res) },
- fail(err) { fail_cb(err) },
- });
- task.onProgressUpdate((res) => { progress_cb(res) });
- } else {
- let task = wx.uploadFile({
- url: upload_url,
- filePath: filePath,
- name: name,
- formData: formData,
- success(res) { success_cb(res) },
- fail(err) { fail_cb(err) },
- });
- task.onProgressUpdate((res) => { progress_cb(res) });
- }
- }
- // var xml = new XMLHttpRequest()
- // let request_url = http.domain+url
- // console.log('request_url=',request_url)
- // xml.open('POST', request_url, true)
- // xml.setRequestHeader('Content-Type', 'multipart/form-data');
- // if(userDataManager.user_data!=null){
- // xml.setRequestHeader('token',userDataManager.user_data.token);
- // }
- // //创建一个FormData对象来处理文件上传
- // let formData = new FormData()
- // formData.append("file", filePath)
- // //发送请求
- // xml.send(formData)
- // // 监听上传进度事件
- // xml.upload.onprogress = function(event) {
- // if (event.lengthComputable) {
- // var percentComplete = (event.loaded / event.total) * 100;
- // console.log(Math.round(percentComplete) + "% uploaded");
- // }
- // };
- // // 监听请求完成事件
- // xml.onload = function() {
- // if (xml.status === 200) {
- // console.log("File uploaded successfully");
- // } else {
- // console.log("Upload failed with status: " + xml.status);
- // }
- // }
- // // 监听错误事件
- // xml.onerror = function() {
- // console.log("Network error occurred");
- // };
- // // Special event
- // xml.onreadystatechange = function () {
- // console.log('xml.readyState=',xml.readyState,' xml.status=',xml.status)
- // if (xml.readyState === 4 && xml.status >= 200) {
- // call_back(null, xml.responseText);
- // } else if (xml.status === 404) {
- // call_back('404 page not found!', null);
- // }
- // }
- }
- }
|