Delphi XE7和Indy 10:
我正在尝试与需要 授权:承载者xxxxxxx 在HTTP调用的标题中
我正在代码中执行以下操作:
...
https.Request.Clear;
https.Request.CustomHeaders.Clear;
https.Request.BasicAuthentication:=false;
https.Request.Accept:='application-json';
https.Request.ContentType:='application/json';
token :=get_access_token;
Https.Request.CustomHeaders.AddValue('Authorization', 'Bearer '+token);
json :=https.post(base_api,reqjson);
就在POST之前,request.headers的内容就是
(nil,[],$ 31F28C0,#0,'',#0,False,0,nil,True, (('' Authorization:Bearer xxxxxxxxxxx ... x',nil),('',nil),('', nil),('',nil)),1,4,False,dupIgnore,False,(nil,nil),(nil,nil), False,':',True,True,2147483647,QuoteHTTP)
但是当我检查idlog调试时,它显示:
POST xxxxxxxxxxxxxxxxxxx
内容类型:application / json
内容长度:629
授权:基本xxxxxxxxxxxxxx ... xxx
主机:xxxxxxxxxxxxxxxxxxxx
接受:application-json
接受编码:身份
User-Agent:Mozilla / 3.0(兼容; Indy库)
似乎Bearer变成了Basic?如何避免这种情况?