小编Dai*_*ynn的帖子

如何将状态401从WebAPI返回到AngularJS并包含自定义消息?

在我的WebAPI类中,ApiController我打了一个调用,例如:

string myCustomMessage = .....;

throw new HttpResponseException(
    new HttpResponseMessage(HttpStatusCode.Unauthorized)
        { ReasonPhrase = myCustomMessage });
Run Code Online (Sandbox Code Playgroud)

当我使用AngularJS $resource服务调用时,我会在状态字段中获得响应的401,在promise的catch块中.401比赛HttpStatusCode.Unauthorized,所以一切都很好.

但问题是响应的数据字段为空(null).我没有得到myCustomMessage返回.

现在,如果不是抛出HttpResponseException异常,我只是抛出一条Exception带有消息的常规消息,该消息确实使它回转到Angular.

我需要能够做到这两点:从服务器返回自定义消息,以及返回的状态代码是我想要的,在本例中为401.

谁知道如何做到这一点?

[编辑] 解决方案:

 throw new HttpResponseException(
     Request.CreateErrorResponse(HttpStatusCode.Unauthorized, myCustomMessage));
Run Code Online (Sandbox Code Playgroud)

javascript asp.net-web-api angularjs

11
推荐指数
1
解决办法
1万
查看次数

Jupyter下的Haskell

互联网奇怪地没有关于如何在Jupyter环境下运行Haskell的指令.任何引导您的文档都需要您从源代码编译,但是在尝试这样做时,会发生各种构建错误.

似乎奇怪的是,一个肯定会给Haskell带来如此大曝光的环境奇怪的是没有足够多的人运用,以至于会有一些体面的文档.然而,据说这种语言是受支持的.

有没有人得到这个工作?

ihaskell jupyter jupyter-irkernel

9
推荐指数
1
解决办法
3866
查看次数

使用AngularJS,我不想设置全局$ http.defaults.headers.common.我可以在每次$ resource调用时发送自定义标头吗?

我正在调用一个我无法控制的后端服务器.目前它正在使用这样的jQuery ajax:

return $.ajax({
    type: "POST",
    url: "/api/cases/store",
    contentType: "application/json",
    data: JSON.stringify(parameters),
    headers: { "Authorization": cred } : {}
}) // ... etc.
Run Code Online (Sandbox Code Playgroud)

我想将它转换为使用该$resource服务,并让它工作这样做

$http.defaults.headers.common['Authorization'] = cred;
return $resource('/api/cases/store').save();
Run Code Online (Sandbox Code Playgroud)

唯一的问题是我必须$http使用auth凭据设置全局服务默认值.

我看到你应该能够通过$http调用传递自定义标头,现在通过$resource调用,但我找不到任何关于如何在我的情况下执行它的示例(使用POST).

我在AngularJS文档中也找不到任何相关内容.你们怎么想出这个东西?文档非常糟糕!

javascript http-post angularjs angularjs-resource angularjs-http

4
推荐指数
1
解决办法
2168
查看次数