gpt4 book ai didi

django - 使用带有 Django CSRF 保护的 angular2 http 请求的正确方法是什么?

转载 作者:太空狗 更新时间:2023-10-29 16:54:47 27 4
gpt4 key购买 nike

在 Angular1 中可以通过配置 $http-provider 来解决这个问题。喜欢:

app.config(function($httpProvider) {
$httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
});

在 Angular2 中执行相同操作的最佳做​​法是什么?

在 Angular2 中,为了处理 http 请求,我们需要使用 Http 类。当然,在每次调用后置函数时都添加 CSRF 行并不是一个好的做法。

我想在 Angular2 中我应该创建自己的类来继承 Angular2 的 Http 类并重新定义后置函数。这是正确的方法还是有更优雅的方法?

最佳答案

现在 Angular 2 已经发布,下面的方法似乎是正确的做法,即使用 CookieXSRFStrategy

我已将我的应用程序配置为有一个 core module但您可以在主应用程序模块中执行相同的操作:

import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';
import { CommonModule } from '@angular/common';
import { HttpModule, XSRFStrategy, CookieXSRFStrategy } from '@angular/http';

@NgModule({
imports: [
CommonModule,
HttpModule
],
declarations: [ ],
exports: [ ],
providers: [
{
provide: XSRFStrategy,
useValue: new CookieXSRFStrategy('csrftoken', 'X-CSRFToken')
}
]
})


export class CoreModule {
},

关于django - 使用带有 Django CSRF 保护的 angular2 http 请求的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34494876/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com