【问题标题】:Error in using WebClient object REST API call using C#使用 C# 使用 WebClient 对象 REST API 调用时出错
【发布时间】:2014-01-09 10:03:20
【问题描述】:

我正在尝试使用以下代码将订单发布到 REST API:

 string URI = "https://api.myTrade.com/s1/order/" + orderId;
            string myParameters = "symbol=AAPL&duration=day&side=buy&quantity=1&type=limit&price=1";
            Console.Write("Parameters : " + myParameters + "\n");
            using (WebClient wc = new WebClient())
            {
                wc.Headers[HttpRequestHeader.Authorization] = "Bearer " + token
                wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
                wc.Headers[HttpRequestHeader.Accept] = "application/json";
                string responsebody = wc.UploadString(URI, myParameters);
                //Console.Write("Output : " + responsebody + " ");
                dynamic dynObj = JsonConvert.DeserializeObject(responsebody);

                return responsebody;
            }

我收到以下异常:

Input String was not in a correct format.

非常感谢任何帮助。

【问题讨论】:

    标签: c# api rest webclient uploadstring


    【解决方案1】:

    应该有一个

    ?

    在参数字符串之前的 orderId 之后。也可以试试 URL 编码

    http://msdn.microsoft.com/en-us/library/system.web.httputility.urlencode(v=vs.110).aspx

    http://msdn.microsoft.com/en-us/library/zttxte6w(v=vs.110).aspx

    希望对你有帮助。

    【讨论】:

    • 谢谢@Stewart Mbofana,能够获得输出。我使用 WebClient.UploadValues() 方法对 NameValueCollection 进行了测试,该方法也可以正常工作。
    猜你喜欢
    • 2020-01-13
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 2017-10-17
    • 2018-02-05
    • 1970-01-01
    • 1970-01-01
    • 2019-11-05
    相关资源
    最近更新 更多