$ .request.parameters.get在XSJS中获得一个数组

2020-09-04 18:49发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在发出Ajax GET请求并发送一个json对象。 我能够捕获xsjs中的字符串值,而对于数组,它表示未定义。 如何获取数组值? 代码如下:

Ajax呼叫:

在数据中:结果是一个数组。

$。ajax({

网址:getServiceUrl(" createUserTags.xsjs"),

类型:"获取",

数据:{" objectId":objectId," userId":oUserId," tagsArray":结果},

异步:否,

dataType:" json",

成功:函数(数据){

console.log(data);

}

});

在我的xsjs文件中:

var objectId = $ .request.parameters.get(" objectId");

var tagsArray = $ .request.parameters.get(" tagsArray"); //--------->我认为这就是问题所在

var userId = $ .request.parameters.get(" userId");

var conn = $ .db.getConnection();

尝试{

for(var c = 0; c

//做某事....

}

conn.commit();

$ .response.setBody('{" success":" true"}');

$ .response.headers.set(" Access-Control-Allow-Origin"," *");

$ .response.contentType =" application/json";

}抓住(e){

$ .response.setBody('{" Fail":"'+ tagsArray +'"}');

$ .response.headers.set(" Access-Control-Allow-Origin"," *");

$ .response.contentType =" application/json";

}

我得到的错误消息为{" Fail":" undefined"},如何获取tagsArray值?

谢谢

螃蟹

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,

我正在发出Ajax GET请求并发送一个json对象。 我能够捕获xsjs中的字符串值,而对于数组,它表示未定义。 如何获取数组值? 代码如下:

Ajax呼叫:

在数据中:结果是一个数组。

$。ajax({

网址:getServiceUrl(" createUserTags.xsjs"),

类型:"获取",

数据:{" objectId":objectId," userId":oUserId," tagsArray":结果},

异步:否,

dataType:" json",

成功:函数(数据){

console.log(data);

}

});

在我的xsjs文件中:

var objectId = $ .request.parameters.get(" objectId");

var tagsArray = $ .request.parameters.get(" tagsArray"); //--------->我认为这就是问题所在

var userId = $ .request.parameters.get(" userId");

var conn = $ .db.getConnection();

尝试{

for(var c = 0; c

//做某事....

}

conn.commit();

$ .response.setBody('{" success":" true"}');

$ .response.headers.set(" Access-Control-Allow-Origin"," *");

$ .response.contentType =" application/json";

}抓住(e){

$ .response.setBody('{" Fail":"'+ tagsArray +'"}');

$ .response.headers.set(" Access-Control-Allow-Origin"," *");

$ .response.contentType =" application/json";

}

我得到的错误消息为{" Fail":" undefined"},如何获取tagsArray值?

谢谢

螃蟹

付费偷看设置
发送
3条回答
haha101010
1楼 · 2020-09-04 19:02.采纳回答

嗨Prab,

您可以通过在get调用中的参数名称中添加方括号来获取数组参数。

var tagsArray = $ .request.parameters.get(" tagsArray []");


这是必需的,因为在请求URL中,参数" tagsArray"被称为" tagsArray%5b%5d"(=" tagsArray []"),因为数组值。


最诚挚的问候,

Florian

骆驼绵羊
2楼-- · 2020-09-04 19:05

嗨,Kapil,


从快速的观察中,我看到您正在发出POST请求,就像在xsjs中那样,您通过执行" var id = $。request.parameters.get(" ID");"来尝试获取所需变量。 适用于GET请求。


对于POST请求,请尝试如下xsjs中的内容:


var obj = $ .request.body.asString();

obj = JSON.parse(obj);

var itemId = obj.ID;

var firstName = obj.FirstName;

希望这会有所帮助。

微wx笑
3楼-- · 2020-09-04 19:11

嗨,

对于那些仍然参考此问题的人,我发现XS Classic Javascript库非常有用:

https://help.sap.com/ doc/3de842783af24336b6305a3c0223a369/2.0.03/zh-CN/index.html

最诚挚的问候,

Silviu

一周热门 更多>