2017-02-07 32 views
1

Я использую стандартный способ использования X-CSRF-токен в угловых 2, как это в моем app.module:Get X-CSRF-токен в Угловом 2

provide: XSRFStrategy, useValue: new CookieXSRFStrategy('CSRF-TOKEN', 'X-CSRF-TOKEN') 

Я использую "primeng" для файла -загрузить. Мне нужно настроить маркер моим сам, как это:

private onBeforeSend(event) { 
    event.xhr.setRequestHeader("X-CSRF-TOKEN", tokenThatINeed); 
} 

Мне нужно, что маркер, который Angular2 был создан для меня. Я не знаю, как получить доступ к токену.

ответ

1

вы можете получить маркер со следующим кодом

document.cookie 
0

Итак, у меня была аналогичная проблема, и использовать 3 участника библиотеку JavaScript, чтобы решить эту проблему. Есть несколько разных, но я использовал angular2-cookie. После того, как вы добавите Сервис в свой Компонент, он довольно прямолинейный. Вот как выглядит мой код:

import {CookieService} from "angular2-cookie/core"; 

@Component({ 
    selector: 'fileUpload', 
    templateUrl: 'app/components/files/fileUpload.html', 
    providers: [CookieService] 

}) 

export class FileUploadComponent { 
    uploadUrl:string; 

    constructor(private propertyService:PropertyService, 
       private cookieService:CookieService){ 

     this.uploadUrl = propertyService.getProperties().server_location + "/files/upload" 
    } 

    onBeforeSend(event:any){ 
     event.xhr.open("POST", this.uploadUrl, true); 
     event.xhr.setRequestHeader("X-XSRF-TOKEN", this.cookieService.get("XSRF-TOKEN")); 
    } 
} 

 Смежные вопросы

  • Нет связанных вопросов^_^