小编Ros*_*oss的帖子

HttpClient身份验证标头未被发送

我正在尝试使用HttpClient需要基本HTTP身份验证的第三方服务.我正在使用AuthenticationHeaderValue.这是我到目前为止所提出的:

HttpRequestMessage<RequestType> request = 
    new HttpRequestMessage<RequestType>(
        new RequestType("third-party-vendor-action"),
        MediaTypeHeaderValue.Parse("application/xml"));
request.Headers.Authorization = new AuthenticationHeaderValue(
    "Basic", Convert.ToBase64String(System.Text.ASCIIEncoding.ASCII.GetBytes(
        string.Format("{0}:{1}", "username", "password"))));

var task = client.PostAsync(Uri, request.Content);
ResponseType response = task.ContinueWith(
    t =>
    {
        return t.Result.Content.ReadAsAsync<ResponseType>();
    }).Unwrap().Result;
Run Code Online (Sandbox Code Playgroud)

看起来POST动作工作正常,但我没有收到我期望的数据.通过一些试验和错误,并最终使用Fiddler来嗅探原始流量,我发现授权标头没有被发送.

我已经看过,但我认为我已经将指定的身份验证方案指定为AuthenticationHeaderValue构造函数的一部分.

有没有我错过的东西?

c# wcf-web-api .net-4.5 dotnet-httpclient

23
推荐指数
5
解决办法
5万
查看次数

自托管WebAPI应用程序引用来自不同程序集的控制器

我遇到了这个宝石,它似乎与我想要的很接近.但是,我想使用已引用的程序集中已编写的控制器.

我的第一个破解是引用程序集,设置路由规则与原始webAPI项目相同并且去,但每次尝试调用自托管服务时我都会得到400.我已经用Fiddler选择了请求的内部,除了地址差异之外,对webAPI项目和自托管项目的请求是相同的.

我觉得这应该是相对简单的,但我没有找到一个可以接受的答案.

.net self-hosting asp.net-web-api

10
推荐指数
2
解决办法
5542
查看次数

MVC4 WebAPI原因短语?

根据MSDN 上的HttpResponseMessage 文档,原因短语(如200 OK的"OK"部分)应该是可设置的.HTTP响应让我设置原因短语:

HttpResponseMessage response = new HttpResponseMessage(System.Net.HttpStatusCode.Conflict);
            response.ReasonPhrase = "conflict message";
Run Code Online (Sandbox Code Playgroud)

但是,当我在客户端使用响应作为WebResponse时,我没有看到我的自定义原因短语.我希望在StatusDescription下找到它.使用Fiddler查看原始响应,似乎没有在服务器上设置原因短语.

一位乐于助人的同事指出,通过行动结果(和派生),我可以做一些类似于:

new HttpStatusCodeResult(System.Net.HttpStatusCode.Conflict, "conflict message");

似乎这就是我所追求的精确功能,但我不确定如何说服WebAPI合作.

我哪里错了?

asp.net-mvc wcf-web-api

8
推荐指数
1
解决办法
3812
查看次数

条带计划注册和收据电子邮件

我正在Stripe中创建客户(使用测试模式),并提供定期计划和电子邮件地址.到目前为止,一切都按照我的预期运作:当一个客户被创建并注册一个定期计划时,他们会在计划的第一个阶段自动收费.我所拥有的几乎是逐字逐句的教程.计划名称不同,成本也不同,但除此之外,它或多或少都是复制/粘贴.

但是,即使客户注册了电子邮件设置并且Stripe帐户设置为通过收费发送客户收据,也不会发送来自Stripe的收据电子邮件.我不清楚为什么会这样,特别是因为我认为Stripe应该在收取"电子邮件客户成功付款"的任何费用时发送电子邮件,即使在测试模式下(根据支持网站) .

查看发票仪表板,看起来收据历史记录中没有收到收据电子邮件,这让我相信我所做的事情是不正确的.

为什么Stripe不会在成功收费后发送电子邮件?我错过了什么?

stripe-payments

5
推荐指数
1
解决办法
2942
查看次数

在淘汰赛中禁用个别项目 - 可排序

在knockout-sortable中,我知道您可以isEnabledsortable绑定中禁用可排序列表.我也知道你可以cancelDrop在一个beforeMove函数中禁用移动项目.问题是,isEnabled禁用整个列表,并且cancelDrop只能在项目已拖放到另一个项目后调用sortable.

有没有办法禁用sortable某些包含项目的点击/拖动行为?

knockout.js knockout-sortable

3
推荐指数
1
解决办法
1878
查看次数