我正在尝试获取Get请求的基本授权,但我有2个例外:
Person players[] = { new SoccerPlayer("Mia Hamm", 7), new SoccerPlayer("Kristine Lilly", 6) };
System.out.println(players[0].compareTo((SoccerPlayer) players[1])); // Line ***
OPTIONS http://localhost/drupal/user/1?_format=json
我正在使用angular2和drupal 8后端
这是我的服务
XMLHttpRequest cannot load http://localhost/drupal/user/1?_format=json. Response for preflight has invalid HTTP status code 405
但是当我从邮递员应用程序尝试相同的请求时,它可以正常工作
我该如何解决?
答案 0 :(得分:1)
在Postman中,您正在发送标题:
Authorization: Basic bXVyaGFmOmhleGFkZWNpbWFsMDU
但是你正在传递角色:
headers.append('Authorization', 'Basic ' + btoa('bXVyaGFmOmhleGFkZWNpbWFsMDU'));
最终会成为:
Authorization: Basic YlhWeWFHRm1PbWhsZUdGa1pXTnBiV0ZzTURV
所以,不要将字符串转换为base64
headers.append('Authorization', 'Basic bXVyaGFmOmhleGFkZWNpbWFsMDU');
错误代码405表示:Method Not Allowed
,这意味着,drupal不允许OPTIONS
个请求。我之前没有和Drupal合作过。但是,应该有一种方法可以允许OPTIONS
次请求。