我在XE7中测试DataSnap Rest应用程序。 我还检查了样本方法' EchoString'和' ReverseString'。 我已经运行了这些服务,我可以在测试浏览器中执行这些方法。
但是如何在Rest Debugger中测试方法。
Methode:得到 网址:http://localhost:8082/reversestring - >不知道这是否是正确的做法 我必须在哪里设置像#' ABC'获得CBA'发送请求后。
在Google Chrome中使用java控制台之后我就抓住了网址。
REST Debugger中的设置:
Methode: GET
URL:http://localhost:8082/datasnap/rest/TServerMethods1/ReverseString/ABC
BODY标签中的回复:
{
"result":
[
"CBA"
]
}
也可以在参数部分设置值。 但它没有用。我想我做错了。
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: /TServerMethods1/ReverseString
Request Parameters: [GET/POST] Value=ABC
回复>体
{
"result":
[
""
]
}
我必须得到结果CBA 我在参数设置中做错了什么 在响应中,url是我使用参数部分的时候 http://localhost:8082/datasnap/rest/TServerMethods1/ReverseString?Value=ABC
查找以使用参数部分:
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: TServerMethods1/reversestring/{Value}
Request Parameters: [URL-SEGMENT] Value=ABC
但如何处理2个参数?
function TServerMethods1.MySum(A, B: Integer): Integer;
begin
Result:= A+B;
end;
参数部分中的:
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: TServerMethods1/MySum/{A,B}
Request Parameters: [URL-SEGMENT] A, B= 12, 23
- >给出错误:"错误":"' 12,23'不是有效的整数值"
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: TServerMethods1/MySum/{A},{B}
Request Parameters: [URL-SEGMENT] A=12
[URL-SEGMENT] B=23
- >给出错误:"错误":"' 12,23'不是有效的整数值"
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: TServerMethods1/MySum/{A}{B}
Request Parameters: [URL-SEGMENT] A=12
[URL-SEGMENT] B=23
给出结果1223,函数中的参数A = 1223且B = 0。 这不是正确的输入,我错了什么?
查找2个参数的解决方案
Tab Request
Methode: GET
URL: http://localhost:8081/datasnap/rest
Tab Parameters
Resource: TServerMethods1/MySum/{A}/{B}
Request Parameters: [URL-SEGMENT] A=12
[URL-SEGMENT] B=23
今天学点东西。 ; - )
答案 0 :(得分:2)
请参阅David I的博客文章,了解如何在DataSnap REST服务器上使用REST调试器: http://blogs.embarcadero.com/davidi/2014/01/17/43254#comment-111140
注意:在URL中,您可以指定在参数部分中设置的{value}部分。
答案 1 :(得分:-2)