Put Call在PostMan中起作用,但在RestSharp中不起作用:收到错误的请求

拉尔斯·霍尔德(Lars Holdgaard)

我想用Put命令调用一个端点。

在邮递员中

我可以举个例子https://example.com/customers/106然后,我添加一个类型的主体application/json(在之下raw)。

当我Put将此主体连接到端点时,我得到一个200 OK

我使用的端点需要两个自定义标头和一个内容类型,它们是在标头下创建的。所以我添加三个标题:X-AppSecretTokenX-AgreementGrantTokenContent-Typeto application/json)。

在RestSharp中

在这里,我使用以下内容。与我在邮递员中所做putstr的完全一样Put

 var restclient = new RestSharp.RestClient("https://example.com");
 var request = new RestRequest("/customers/" + customerId, Method.PUT);
 request.AddHeader("X-AppSecretToken", systemToken);
 request.AddHeader("X-AgreementGrantToken", userToken);
 request.AddHeader("Accept", "application/json");
 request.AddJsonBody(putstr);
 var response = restclient.Execute(request);

现在,当我这样做时,我得到以下响应,这是我正在调用的API中的一个自定义错误:

"{\"message\":\"Error converting value SOME STUFF}}\\\" to type 'eco.rest.Models.Customer'. Path '', line 1, position 605.\",\"errorCode\":\"E00500\",\"developerHint\":\"The JSON payload could not be parsed. The error message should give you a good indication of where the error is located. One common reason for this error is a missing '{' or a '}' in your payload.\",\"logId\":\"123fc6fb4964a141f612ae8ae7571446\",\"httpStatusCode\":400,\"logTime\":\"2018-05-20T21:56:56\"}"

怎么修?

通常,我永远不会问这个问题。如果有人问,我会说:打开Fiddler或类似工具,看看请求有何不同。

我有一些麻烦,因为它是HTTPS。

当我调试代码时,我根本看不到Fiddler内部的调用。我也安装了查尔斯,但也没有运气。不确定是什么问题。

但是,我认为阅读此书的人可能会提出这个问题。我自己的假设是,我可能以错误的方式添加了标头,JSON主体的编码方式不同或相似,但是我不确定如何继续。我希望有人能帮帮忙!

雨果

您的putstr值似乎是JSON值。
AddJsonBody会将这个JSON值转换成另一个JSON值。

您应该使用原始对象而不是putstr

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

POST 和 PUT 方法在 Postman 中不起作用,但在 Swagger 中起作用

图像上传的PUT请求在Django Rest中不起作用

jQuery REST PUT 请求在我的代码中不起作用?

MultiPart PUT 请求在 spring boot 中不起作用

Axios PUT 请求不起作用

PUT请求在Axios上不起作用

put 路由在 node.js 中不起作用,显示错误无法 PUT

MethodOverride PUT 不起作用

Retrofit的Put方法在Android中不起作用

为什么$ http.put在AngularJS中不起作用?

为什么TreeMap的put方法在Java中不起作用?

PUT请求不起作用,Flask-RESTful,SQLAlchemy

如何修复Slim 3 PUT,DELETE请求不起作用

Magento 2 Rest API,PUT 目录请求不起作用

为什么来自 Node/Express 的 POST 和 PUT 请求在 React/Redux 中不起作用?我的 GET 和 DELETE 请求都可以正常工作。所有请求都在 Postman 中工作

AngularJS-PUT方法不起作用(404错误)

内容类型为application / x-www-form-urlencoded的Http Put请求在Spring中不起作用

MVC Http PUT 不起作用

dojo / request PUT方法不起作用

Java HashMap put 方法不起作用

Mockmvc put方法在春季不起作用

MethodNotAllowedHttpException Laravel方法PUT不起作用

Laravel Form PUT方法不起作用

工作日请求在SoapUI中起作用,但在Postman中不起作用

Android Retrofit POST请求不起作用,但在Postman中起作用

对于春季,put方法在邮递员中不起作用

为什么Dynamodb.put在Lambda函数中不起作用?返回null。如何调试?

axios.patch / axios.put在Vue和Laravel中不起作用

POST,PUT和DELETE方法在我的Web应用程序中不起作用