点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
你好同事
我有一个XSJS脚本,该脚本生成一个请求并将响应类型设置为Application/Json
function GetDataFromAPI(){ var data = {" index":[" TABLE"]}; var jdata = JSON.stringify(data); var destination = $ .net.http.readDestination(" reposiory.namespace.lazyrequest"," destinationFile"); var client = new $ .net.http.Client(); var request = new $ .net.http.Request($。net.http.POST,"/img/data/query/"); request.headers.set(" Authorization"," eyJhbxuiasdasdasdasudhasdhasiuhdauidasdhaisdhashd"); //当然,具有授权标头是一种违反行为,而不是最佳实践,但是为了测试它,我做了一个例外。 代码可以工作,但是会生成一个文件而不是json响应。 尝试将螺丝数据字符串化为文字。 request.headers.set(" Content-Type"," Application/json"); request.setBody(jdata); client.request(请求,目的地); var response = client.getResponse(); var RESULT = response.body.asString()。replace(/\\/g,"").replace(/"/img/g,""); var jres = JSON.stringify(response.body.asString()); var clean =(jres.replace(/\\/g,"")) $ .response.status = $ .net.http.OK; $ .response.headers.set(" Content-Type"," Application/json"); //$.response.contentType =" application/json"; //$ .response.headers.set(" Access-Control-Allow-Origin"," *"); //返回{ //sessionId:response.cookies.get(" xsSessionId"), //csrfToken:response.headers.get(" x-csrf-token") //状态:"确定:" + response.status //}; //$。response.setBody(" OK:" + response.status); //var response1 =响应; //$.response.setBody((response));//{}[0][0] //$.response.setBody(JSON.stringify(response));//返回{} $ .response.setBody((response)); // //返回名称为nameofxsjs.xsjs的文件 //HTTP/1.1 200 OK //内容类型:application/json //服务器:nginx/1.15.6 //date:2020年3月25日,星期三03:58:18 GMT //内容长度:6643153 //连接:保持活动状态 //vary:接受编码 //变化:接受 //allow:GET,POST,HEAD,OPTIONS //x-frame-options:SAMEORIGIN //access-control-allow-origin:* //access-control-allow-methods:GET,POST,OPTIONS //access-control-allow-headers:DNT,X-Mx-ReqToekn,Keep-Alive,X-Requested-With,If-Modified-Since,Cache///Control,Content-Type,Authorization //{json有效负载 //} GetDataFromAPI();
结果:返回响应,它会生成一个具有XSJS名称的文件
在生成的XSJS文件中,我看到状态,允许的方法信息以及json响应(数据)
步骤:我无法进行字符串化,因为它返回一个空数组。
ReolutionSteps:我被迫对响应进行asString()。replace('chars')
我希望你能理解我所面临的。
请让我知道如何轻松进行操作。我需要正确的json响应。
Br
Asgariel
大家好! 解决了这个问题。
只需带走Javascript。
JSON.parse(response)将您的响应内容转换为正确的json,我再也不会在内存中忘记它了。 只需一行。
您好好友,您能不能发布您的代码,以便我们在@ end检出!!!
一周热门 更多>