gpt4 book ai didi

c# - 使用restsharp put方法更新AtTask中的项目参数

转载 作者:太空宇宙 更新时间:2023-11-03 15:41:13 26 4
gpt4 key购买 nike

我在使用 Attask 的项目中遇到了一些困难。我的目标是使用自定义表单数据更新项目的 alignmentValues ..我已经能够创建新的对齐值进行更新,但我无法使用 put 方法执行它...我要执行的请求是

PUT /attask/api/project/4c7...?updates= 
{
alignmentValues: [
{
scoreCardOptionID: "2222...54d0",
scoreCardQuestionID : "8897...54d1",...
},....
]
}

我的代码片段是

var request = new RestRequest("project/{id}", Method.PUT);
request.AddUrlSegment("id", pid);
request.RequestFormat = DataFormat.Json;
JObject _putData = new JObject();
_putData.Add("alignmentValues",newAnswers);

对于更新对象,我尝试了几种组合

request.AddParameter("updates",_putData,ParameterType.RequestBody); //no effect
request.AddBody(new {name = "updates", value = _putData}); //no effect

使用这种正文方法,我什至无法更新项目名称。但是当我将参数作为查询字符串提供时,它成功更新了名称但由于 url 变得太大而无法更新对齐值

var request = new RestRequest("project/{id}?updates=" + _putData , Method.PUT);

如果 _putData 很小,上面的方法可以工作...比如 name = "TEST"..但是对于大的 json 数组会失败..

关于如何使用 addbody/addobject/addjsonobject/addparameter 更新值的任何建议...因为我需要在正文中发送请求,因为它的大小...

提前致谢。

最佳答案

嗯,这不是一个答案,但我侥幸让它工作了..所以主要问题仍然存在..我不能将正文与PUT请求一起使用..即使我使用它也没有显示结果..所以我不得不只使用查询字符串......现在,对于查询字符串中大参数的问题,我发送了整个 alignmentvalues 对象,我只需要更新该对象中的两个字段。所以在试错法中,我只传递了对象中的三个字段 - 答案 ID 和两个要更新的字段......它减少了查询字符串的大小,幸运的是它对我有用......

关于c# - 使用restsharp put方法更新AtTask中的项目参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30198738/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com