【问题标题】:How to access shopify api with .NEts new HttpClient class如何使用 .NETs 新的 HttpClient 类访问 shopify api
【发布时间】:2012-11-09 17:02:24
【问题描述】:

我正在尝试这样调用 shopify:

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

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

是否有人知道如何使用新的 .NEt 4.5 HttpClient 做到这一点?

【问题讨论】:

    标签: .net httpclient shopify


    【解决方案1】:

    您可以尝试创建一个 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 中传递 username@password。

    【讨论】:

      【解决方案2】:

      Chris 的回答是肯定的。

      如果您还对通过 .NET 使用 Shopify API 的更巧妙方式感到好奇,请查看适用于 Shopify 的官方 .NET 适配器:https://github.com/cmcdonaldca/shopify.net

      【讨论】:

        猜你喜欢
        • 2010-11-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-05-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多