c# - 为什么 API 向我发送新用户的 OK 响应和 Id 但找不到用户?
问题描述
我正在使用 Restsharp 在 C# 中构建 API 使用者。当向我发送这样的请求时:
var request = new RestRequest("Employees",Method.POST);
request.AddHeader("Accept", "application/json");
request.AddParameter("x-company", xCompany);
request.AddHeader("Content-Type", "application/json");
request.AddJsonBody(entity,"application/json");
IRestResponse response = client.Execute(request);
我收到了 200 个州的回应和这个机构:
"{\"data\":{\"id\":\"cDhkRjdaYVNsS0lLeElONkZpZmVkUT09\",\"firstName\":\"fName\",\"lastName\":\"name\",\"email\":\"fName@mail.de\",\"companyId\":null,\"phoneNumber\":null,\"budgetGroupId\":84405,\"badgeId\":null,\"description\":\"description-dev\",\"status\":\"Unknown\",\"takeawayPayCard\":{\"reference\":null,\"cardLastDigits\":null,\"status\":\"Unknown\"}},\"success\":true,\"errors\":[]}"
同样的请求也适用于邮递员。我认为该操作必须成功,因为响应为 200 并且包含用户的 Id。但是如果我搜索用户,它就被创建了。我究竟做错了什么?
编辑:使用 Postman 生成的代码有效,但我无法替换 Json 中的右侧值,因为 $@ 不可用:
var request = new RestRequest(Method.POST);
request.AddHeader("Authorization", "Bearer ###TOKEN####");
request.AddHeader("Content-Type", "application/json");
var body = @" {
" + "\n" +
@" ""id"": null,
" + "\n" +
@" ""firstName"": ""test"",
" + "\n" +
@" ""lastName"": ""test4"",
" + "\n" +
@" ""email"": ""tesmail@mail.de"",
" + "\n" +
@" ""companyId"": null,
" + "\n" +
@" ""phoneNumber"": null,
" + "\n" +
@" ""budgetGroupId"": 84405,
" + "\n" +
@" ""badgeId"": null,
" + "\n" +
@" ""description"": ""adessso"",
" + "\n" +
@" ""status"": null
" + "\n" +
@" }";
request.AddParameter("application/json", body, ParameterType.RequestBody);
IRestResponse response = client.Execute(request);