- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
delphi – 如何使用datasnap获取作为标头传递的标记?
在我的客户端应用程序中,我使用以下代码在标头中添加令牌:
RESTRequest.Params.AddItem('Authorization','Bearer ' + MyToken,TRESTRequestParameterKind.pkHTTPHEADER,[TRESTRequestParameterOption.poDoNotEncode]);
我想使用datasnap在我的服务器中获取此令牌.
我尝试过使用here和here的答案,但没有成功.
可能吗?
我怎样才能做到这一点?
编辑
我可以验证Datasnap是否执行了TIdCustomHTTPServer.DoParseAuthentication,并且如果分配了DoParseAuthentication则调用FOnParseAuthentication.
那么,我怎样才能破解Datasnap分配我自己的OnParseAuthentication?
我认为这解决了我的问题.
解决方法
我也有同样的问题.如果使用Authentication头,那么我们得到EIdHTTPUnsupportedAuthorisationScheme错误,我需要设置OnParseAuthentication.我刚刚开始研究这个问题,在测试应用程序“桌面”中我可以做到以下几点.
procedure TMainForm.FormCreate(Sender: TObject);
begin
FServer := TIdHTTPWebBrokerBridge.Create(Self);
FServer.OnParseAuthentication := DoParseAuthentication;// <-added this line
end;
现在我需要弄清楚如何更新ASAPI dll来做同样的事情.
总结
以上是脚本之家为你收集整理的delphi – 如何使用datasnap获取作为标头传递的标记?全部内容,希望文章能够帮你解决delphi – 如何使用datasnap