c# - 如何在 Visual Studio 中的 http Get 请求中传递对象参数

标签 c# json visual-studio object

我有这个 https://www.bookstone.com/api/rest/bookshop/gettotal?products=[{\"PRICE\":39.95,\"RECIPIENT\":{\"ZIPC​​ODE\":\"11779\"},\"代码\":\"F1-509\"}] 这个 https 在 Postman 中运行良好,我得到了结果。

{
"SERVICECHARGE": 14.99,
"SUBTOTAL": 39.95,
"TAX": 0,
"ORDERTOTAL": 54.94,
"ORDERNO": 0,
}

但在 visual studio 中它不起作用。

var url = "https://www.bookstone.com/api/rest/bookshop/gettotal?products=[{\"PRICE\":39.95,\"RECIPIENT\":{\"ZIPCODE\":\"11779\"},\"CODE\":\"F1-509\"}]";

var response = await client.GetAsync(url);

有什么想法吗?

最佳答案

幸运的是,我找到了将数组参数转换为URL中的查询参数的解决方案。

[{"PRICE":98.5,"RECIPIENT":{"ZIPCODE":"12345"},"CODE":"abc"}]
 var queryString = JsonConvert.SerializeObject(object);
  //convert to &
 //%5b%7b%22PRICE%22%3a39.95%2c%22RECIPIENT%22%3a%7b%22ZIPCODE%22%3a%2211779%2     2%7d%2c%22CODE%22%3a%22F1-509%22%7d%5d
  var uri = WebUtility.UrlEncode(queryString);

关于c# - 如何在 Visual Studio 中的 http Get 请求中传递对象参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45068676/

相关文章:

c# - 列表模型 --> orderbydescending System.DateTime 不起作用?

c# - 是否可以使用 Linq To Entities 访问生成的 SQL

c# - 将 IHTMLDocument2.Script.InvokeMember() 返回的 COM 对象转换为有用的东西

xml - Web api 应该默认返回 JSon

json - 使用 Json.obj 和 getOrElse 玩 2.3 写入选项

c# - 异步方法不适用于 ObjectResult<T>

javascript - 将平面数组减少为 2 层嵌套 json 对象数组

Visual Studio 2017 中的 Javascript 断点

c# - 文档缓存仍在构建中...消息不会在 VS 2010 中消失

c# - 编译为 C# 3.0 或 ISO-1 或 ISO-2 之间的区别?