如何使用.NEts新的HttpClient类访问shopify api

时间:2012-11-21 12:31:56

标签: .net httpclient shopify

我试着像这样打电话给店铺:

HttpClient.GetAsync(https://---apikey---:---password---@---shop---.myshopify.com/admin/orders.xml)

但我一直收到未经授权的401结果。当我在chrome中测试uri它工作正常,所以我认为HttpClient无法处理嵌入在shopl所需的url中的身份验证数据。

任何小伙子都知道如何使用新的.NEt 4.5 HttpClient吗?

2 个答案:

答案 0 :(得分:3)

你可以尝试创建一个HttpClientHandler实例并创建一个Credentials实例并在你的HttpClient中使用它,就像这样;

            var clientHandler = new HttpClientHandler
                                    {
                                        Credentials = new NetworkCredential("Username", "Password"),
                                        PreAuthenticate = true
                                    };

            var httpClient = new HttpClient(clientHandler);

            var responseMessage = httpClient.GetAsync("http://url").Result;

在这种情况下,您无需在URI中传递用户名@密码。

答案 1 :(得分:1)

克里斯的回答已经过时了。

如果您对使用Shopify API与.NET的更加流畅的方式感到好奇,请查看Shopify的官方.NET适配器:https://github.com/cmcdonaldca/shopify.net