是否可以使用RestSharp发布文件和json正文?

时间:2013-04-11 15:13:13

标签: json post restsharp

我想将一个文件和一个json对象发布到我的服务器上。作为参数发布工作正常,因此这有效:

request.AddFile ("MyPic", organisation.Pic, "Pic.png", "image/png");
request.AddParameter ("name", "test name");

但是如果我的JSON对象是具有嵌套结构的东西,如:

{organisation:{
   'name':'test',
   'address':{
     'line1':'foo',
     'line2':'foo2'
   }
 }}

如何在保持json结构的同时发布此内容。

如果我在内容体中设置,即:。

request.AddBody (organisation);

内容已发布,但该文件未发布。

是否可以发布json正文和文件?

3 个答案:

答案 0 :(得分:2)

所以,我想出了一个适合我目的的解决方法。我要找的是做一个文件和相关元数据的帖子。在这个例子中,我将对象序列化为JSON字符串,将其设置为我的参数并在服务器上反序列化。这适用于我的情况,但我接受这可能不适合其他人。认为这可能对某人有帮助。

答案 1 :(得分:1)

没有。 当您使用添加文件时,实际上是在您的请求中添加了一个正文。您无法发送包含2个实体的请求。

答案 2 :(得分:0)

实际上这很快就会实现。 RestSharp库上有一个拉取请求来解决这个问题。我已经开始维护该项目,并将在第二天左右将其合并为主人。一旦有足够的东西,我也会发布一个新的NuGet包。