len*_*yee 17 .net c# web-services webservice-client restsharp
我想对这样的URL发出POST请求:
http://localhost/resource?auth_token=1234
Run Code Online (Sandbox Code Playgroud)
我想在体内发送JSON.我的代码看起来像这样:
var client = new RestClient("http://localhost");
var request = new RestRequest("resource", Method.POST);
request.AddParameter("auth_token", "1234");
request.AddBody(json);
var response = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)
如何将auth_token
参数设置为GET参数并将请求设置为POST?
Der*_*ter 40
当前版本的RestSharp有一个使用模板的简短方法:
var request = new RestRequest("resource?auth_token={token}", Method.POST);
request.AddUrlSegment("token", "1234");
Run Code Online (Sandbox Code Playgroud)
或者,您可以添加不带模板的参数:
var request = new RestRequest("resource", Method.POST);
request.AddQueryParameter("auth_token", "1234);
Run Code Online (Sandbox Code Playgroud)
要么
var request = new RestRequest("resource", Method.POST);
request.AddParameter("auth_token", "1234", ParameterType.QueryString);
Run Code Online (Sandbox Code Playgroud)
End*_*050 24
如果你1)将令牌添加到资源URL并且2)指定ParameterType.UrlSegment,这应该工作:
var client = new RestClient("http://localhost");
var request = new RestRequest("resource?auth_token={authToken}", Method.POST);
request.AddParameter("auth_token", "1234", ParameterType.UrlSegment);
request.AddBody(json);
var response = client.Execute(request);
Run Code Online (Sandbox Code Playgroud)
这远非理想 - 但我发现的最简单的方法......仍然希望找到更好的方法.