首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在SAP Netweaver网关HTTP适配器中使用响应?

如何在SAP Netweaver网关HTTP适配器中使用响应?
EN

Stack Overflow用户
提问于 2015-05-22 11:25:11
回答 1查看 679关注 0票数 1

我正在使用SAP网关HTTP集成SAP和。我能够成功地连接到SAP后端系统,并以xml格式获取数据。这就是我得到的回应:

代码语言:javascript
复制
{
"RETURN": "<?xml version=\"1.0\" encoding=\"utf-8\"?><app:service xml:base=\"http:\/\/sapecc.mss.com:8000\/sap\/opu\/sdata\/iwfnd\/SampleUserProcessing\/\" xmlns:app=\"http:\/\/www.w3.org\/2007\/app\" xmlns:atom=\"http:\/\/www.w3.org\/2005\/Atom\" xmlns:sap=\"http:\/\/www.sap.com\/Protocols\/SAPData\" xmlns:gp=\"http:\/\/www.sap.com\/Protocols\/SAPData\/GenericPlayer\" xmlns:m=\"http:\/\/schemas.microsoft.com\/ado\/2007\/08\/dataservices\/metadata\"><app:workspace sap:semantics=\"things\"><atom:title>Things<\/atom:title><\/app:workspace><app:workspace sap:semantics=\"data\"><atom:title>Data<\/atom:title><app:collection href=\"RoleCollection\" sap:creatable=\"true\" sap:updatable=\"true\" sap:deletable=\"true\"><atom:title>RoleCollection<\/atom:title><sap:member-title>Role<\/sap:member-title><\/app:collection><app:collection href=\"ImageCollection\" sap:creatable=\"true\" sap:updatable=\"true\" sap:deletable=\"true\"><atom:title>ImageCollection<\/atom:title><sap:member-title>Image<\/sap:member-title><\/app:collection><app:collection href=\"EmailCollection\" sap:creatable=\"true\" sap:updatable=\"true\" sap:deletable=\"true\"><atom:title>EmailCollection<\/atom:title><sap:member-title>Email<\/sap:member-title><\/app:collection><app:collection href=\"ActivitygroupCollection\" sap:creatable=\"true\" sap:updatable=\"true\" sap:deletable=\"true\"><atom:title>ActivitygroupCollection<\/atom:title><sap:member-title>Activitygroup<\/sap:member-title><\/app:collection><app:collection href=\"UserCollection\" sap:creatable=\"true\" sap:updatable=\"true\" sap:deletable=\"true\"><atom:title>UserCollection<\/atom:title><sap:icon>icon<\/sap:icon><sap:member-title>User<\/sap:member-title><atom:link href=\"SubscriptionCollection\" rel=\"http:\/\/www.sap.com\/Protocols\/SAPData\/rel#subscribe\"\/><\/app:collection><app:collection href=\"UserXnotificationCollection\" sap:creatable=\"false\" sap:updatable=\"false\" sap:deletable=\"false\"><atom:title>UserxnotificationCollection<\/atom:title><sap:member-title>UserXnotification<\/sap:member-title><\/app:collection><app:collection href=\"SubscriptionCollection\" sap:semantics=\"subscriptions\" sap:creatable=\"true\" sap:updatable=\"false\" sap:deletable=\"true\"><atom:title>Subscriptions<\/atom:title><sap:icon>\/sap\/public\/opu\/resources\/sap\/iwfnd\/subscription\/icon_subscription.png<\/sap:icon><sap:member-title>Subscription<\/sap:member-title><gp:collectionLayout display-order=\"1000\" top-level=\"true\"\/><\/app:collection><\/app:workspace><app:workspace sap:semantics=\"subscriptions&amp;notifications\"><atom:title>Subscriptions &amp; Notifications<\/atom:title><\/app:workspace><\/app:service>",
    "isSuccessful": true,
    "responseHeaders": {
      "content-type": "application\/xml",
      "dataserviceversion": "2.0",
      "server": "SAP NetWeaver Application Server \/ ABAP 731",
      "x-sap-odata-extension-version": "0.9;gp=0.8"
    },
    "statusCode": 200,
    "statusReason": "OK"
    }

现在,我想从xml中选择一个特定的值。有人能帮我解决这个问题吗?

代码语言:javascript
复制
function retrieveTravelAgencyProperty() {
var request = {
    CollectionName: "SampleUserProcessing",

};
return WL.Server.fetchNWBusinessObject(request);
}
EN

回答 1

Stack Overflow用户

发布于 2015-05-22 11:59:59

因此,在您的客户端逻辑中,在适配器调用的成功回调中,您将得到一个JSON对象。这个JSON对象包含响应。

所以我认为你应该做的是:

  1. 要么提取到另一个变量,要么直接处理响应中的“返回”键,
  2. 再次将其转换为可读的JSON格式,如下所示:http://davidwalsh.name/convert-xml-json
  3. 迭代刷新的响应,以找到关键:您要寻找的值。例如: 对于(i = 0;i< resultSet.length;i++) { if (resultSeti.name ==“some”){ //假定您知道正在查找什么。警报(resultSeti.name);}

第二步是困难的部分..。不太确定。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30395473

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档