我正在使用HTML客户端,并且遇到以下情况: 使用Embarcadero的RAD Server的内置身份验证方法,我已成功登录用户,并希望现在以连接为RESTful的方式来回传递会话令牌。问题在于,由于某些原因,我不知道如何在RAD服务器中跟踪所述会话令牌。 Embarcadero本身一直保密,告诉我们公司我们可以用Sencha / ExtJS做到这一点,但我们宁愿不再购买更多的软件。整体结构如下:
登录POST用户名和密码(工作)到RAD服务器(仍在工作)并接收完成会话令牌的响应。此时,我想打开另一个HTML文件并维护该会话令牌AS我显示数据,这样对于每个JSON请求,我发送该会话令牌。但是在RAD Studio中,据我所知,我无法手动将JSON数据添加到已构造的JSON对象中以提供给FDBatchMoveJsonWriter组件。如果有可能的话,有人就此做过任何建议/例子吗?
答案 0 :(得分:0)
我还没有使用RAD服务器,但是发布了很多REST服务。 RAD服务器是否支持标头中的身份验证添加?我将THTTPBasicAuthenticator连接到我的TRESTClient,并在OnAuthenticate事件中添加令牌数据。
procedure TCLTSProcessor.RESTAuthenticatorAuthenticate(ARequest: TCustomRESTRequest; var ADone: Boolean);
begin
ARequest.AddAuthParameter('token', userToken, pkHTTPHEADER);
end;
我使用的另一种方法是将TOAuth2Authenticator连接到REST客户端,并将TokenType设置为ttBEARER并设置AccessToken属性。