2020-08-17 16:57发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
嗨,
我们正在使用ODataModel批处理操作(其中,我们在单个批处理操作中发送一个GET和一个PATCH调用)。 根据MockServer文档,请求中支持的方法是" GET" |" POST" |" DELETE |" PUT"。这是否也适用于批处理。以某种方式我在Mock服务器上运行该应用程序时注意到,它返回哑元 这样的请求的响应。如何在Mockserver中存入批处理请求?
您好,我不知道您是如何处理" GET" |" POST" |" DELETE" |" PUT"请求的,但是您始终可以查看函数导入(请参见 https://help.sap.com/viewer/468a97775123488ab3345a0c48cadd8000 zh-cn/95e5b87804ef4059bb68dd511666d4e3.html )。注意:RegExp中定义的路径是模拟服务器根文件中页面的路径。
请注意,他们使用RegExp定义路径。 这使路径变得灵活:由于URL中包含的参数,您可以不同地处理通过同一页面的请求。
当然,您不能直接处理批处理请求,因为它是请求的集合,而不是单个请求。 执行触发不同请求的操作时,您需要在Chrome开发者工具的"网络"标签中分析Web应用程序的请求。 单击批处理请求时,单击批处理请求后,便可以查看标题部分,以查看单个批处理请求中提出的不同请求。 如果您对以下内容感到困惑 我刚刚说的话,或者觉得它太复杂了,您总是可以进入manifest.json文件,并将参数" useBatch"设置为false。 这样,您将能够查看每个多带带的请求(通过"网络"标签中的Chrome开发者工具)。 当您完成模拟服务器的操作后,请记住将其放回原处。
根据我的经验,导入函数的最佳方法是简单地复制要发送的请求的JSON响应(在您单击批处理请求时,位于Chrome开发者工具的"网络"标签中,然后 JSON响应包含在{" d":_someJSONResponse_}中),并使模拟服务器了解您要发送的内容。
这里是一个例子:
aRequests.push({ 方法:" POST", 路径:"(。*)", 响应:函数(oXhr,sUrlParams){ //采用URL的参数 var oUrlParams = jQuery.sap.getUriParameters(oXhr.url); var oJSONResponse = {... your_JSON_Response ...}; //需要放置此位置,以便模拟服务器将该信息发送回去 //第一个参数:HTTP响应状态,第二个参数:响应类型, //第三个参数:实际响应 oXhr.respond(200,{ " Content-Type":" application/json" },JSON.stringify({ " d":oJSONResponse })); //表示请求已处理。 如果省略或为假,则模拟服务器将 //使用其自己的虚拟响应来处理请求以及您自己的请求 返回true; } });
aRequests与上面的链接中描述的相同。 我没有在这里使用RegExp,但是强烈建议这样做,因为模拟服务器的行为可能有所不同。注意:" $"字符可能会引起一些问题。 我从未有过与该角色进行过RegExp的工作。
我希望这可以为您提供帮助!
-Alex
嗨,Alex,
我正面临类似的问题。 但是在我们的项目中实现方式有所不同。 我们可以打个电话吗?
最多设置5个标签!
您好,
我不知道您是如何处理" GET" |" POST" |" DELETE" |" PUT"请求的,但是您始终可以查看函数导入(请参见 https://help.sap.com/viewer/468a97775123488ab3345a0c48cadd8000 zh-cn/95e5b87804ef4059bb68dd511666d4e3.html )。
注意:RegExp中定义的路径是模拟服务器根文件中页面的路径。
请注意,他们使用RegExp定义路径。 这使路径变得灵活:由于URL中包含的参数,您可以不同地处理通过同一页面的请求。
当然,您不能直接处理批处理请求,因为它是请求的集合,而不是单个请求。 执行触发不同请求的操作时,您需要在Chrome开发者工具的"网络"标签中分析Web应用程序的请求。 单击批处理请求时,单击批处理请求后,便可以查看标题部分,以查看单个批处理请求中提出的不同请求。
如果您对以下内容感到困惑 我刚刚说的话,或者觉得它太复杂了,您总是可以进入manifest.json文件,并将参数" useBatch"设置为false。 这样,您将能够查看每个多带带的请求(通过"网络"标签中的Chrome开发者工具)。 当您完成模拟服务器的操作后,请记住将其放回原处。
根据我的经验,导入函数的最佳方法是简单地复制要发送的请求的JSON响应(在您单击批处理请求时,位于Chrome开发者工具的"网络"标签中,然后 JSON响应包含在{" d":_someJSONResponse_}中),并使模拟服务器了解您要发送的内容。
这里是一个例子:
aRequests与上面的链接中描述的相同。 我没有在这里使用RegExp,但是强烈建议这样做,因为模拟服务器的行为可能有所不同。
注意:" $"字符可能会引起一些问题。 我从未有过与该角色进行过RegExp的工作。
我希望这可以为您提供帮助!
-Alex
嗨,Alex,
我正面临类似的问题。 但是在我们的项目中实现方式有所不同。 我们可以打个电话吗?
一周热门 更多>