我有一个symfony服务器,它有jwt认证和一个angular客户端应用程序,它正在发出请求。我成功地登录了,现在我想把一些数据放在一个选择。
此数据是要分配给员工的本地值。
下面是我的api.service.ts
方法:
getLocales(): Observable<any>
{
const headers = { 'Content-Type':'application/json','Access-Control-Allow-Origin': 'https://localhost:8000' }
return (this.http.get( environment.url + 'api/local', { headers: headers }));
}
我把下一个组件的所有局部变量
ngOnInit(): void {
// Cogemos los locales para listarlos en el select
this.api.getLocales()
.subscribe((locales) => {
console.log(JSON.stringify(locales));
this.locales = locales.locals;
});
}
我在HTML中这样显示它:
<div class="form-group col-12 col-md-6 mt-3">
<label class="m-2" for="local">Local:</label>
<select name="local" id="local">
<option *ngFor="let local of locales;" value="{{local}}">{{local}}</option>
</select>
</div>
我还有一个interceptorService来为我发出的每个请求添加身份验证:
export class AuthInterceptorService {
constructor() { }
intercept(req: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>> {
// const token: string = localStorage.getItem('token');
let request = req;
if (window.localStorage.getItem('token')) {
request = req.clone({
setHeaders: {
// 'Access-Control-Allow-Origin': ['http://localhost:4200','https://localhost:8000'],
Authorization: `Bearer ${ window.localStorage.getItem('token') }`
}
});
}
return next.handle(request);
}
}
我的问题是我收到 *400 HTTP状态 *,我不知道为什么。Postman工作正常,我的服务器配置得很好。
1条答案
按热度按时间vlju58qv1#
我有它!我的请求在标题'访问控制允许起源',这是服务器的问题,而不是为客户端.我的指挥官不允许这样做。