12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667 |
- import {getEncodeFun,getDecodeFun} from "./protoMap"
- const URL = 'http://60.205.190.38:80/Ohplay/Web/HttpToTcp';
- function post(request) {
- let encodeFun = getEncodeFun(request.servant);
- console.log(typeof encodeFun);
- //if (typeof encodeFun === "function") {
- let requestBuffer = encodeFun(request)
- //}
- return uni.request({
- //url:'https://test.api1.radio1964.com:80/Ohplay/Web/HttpToTcp'
- url: URL,
- header: {
- "X-Requested-With": "XMLHttpRequest",
- "Content-Type": "application/x-protobuf",
- 'Token': 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJVc2VyaWQiOjY1MDYzMywibmFtZSI6IjE4MTI2NDQ3MDE1IiwiZXhwIjoxNjIyODg0NTA1fQ.f7jIm0856-VnynA99MBoA2Dl1pePxI0HT_ECsUp5QHA'
- },
- method: 'POST',
- timeout: 15000,
- dataType: 'protobuf',
- responseType: 'arraybuffer',
- data: requestBuffer
- }).then((res) => {
- for (let response of res) {
- if (response !== null && response !== undefined && response.statusCode === 200) {
- try {
- let enc = new TextDecoder('utf-8')
- let resJson = JSON.parse(enc.decode(new Uint8Array(response.data))) //转化成json对象
- console.log(resJson);
- return {
- code: resJson.code,
- msg: resJson.info
- }
- } catch (e) {
- let decodeFun = getDecodeFun(request.servant)
- // if (typeof decodeFun === "function") {
- let data = decodeFun(response)
- console.log(data);
- let code = 0
- let msg = "success"
- if(typeof data.errInfo !== 'undefined'){
- code = data.errInfo.errorCode
- if(typeof data.errInfo.errorMessage === 'string'){
- msg = data.errInfo.errorMessage
- }else{
- msg = Buffer.from(data.errInfo.errorMessage).toString()
- }
- }
- //throw "Error2"
- return {
- code: code,
- msg: msg,
- data: data
- }
- // }
- }
- }
- }
- })
- }
- module.exports = post
|