Json 如何更改REST DataSnap中的内容类型响应
我有一个由Json 如何更改REST DataSnap中的内容类型响应,json,rest,delphi,indy,datasnap,Json,Rest,Delphi,Indy,Datasnap,我有一个由WebBroker-REST制作的项目,作为服务运行,我需要将coent-Type响应更改为application/json,默认情况下WebBroker-REST为我带来 “内容类型”文本/html;字符集=ISO-8859-1' 我通过访问方法来更改响应 GetInvocationMetadata(True).ResponseContentType='application/json' 对于Data.DBXPlatform类,它仍然没有解析它,而是在当前类型的正下方添加了另一个内容
WebBroker-REST
制作的项目,作为服务运行,我需要将coent-Type
响应更改为application/json
,默认情况下WebBroker-REST
为我带来
“内容类型”文本/html;字符集=ISO-8859-1'
我通过访问方法来更改响应
GetInvocationMetadata(True).ResponseContentType='application/json'
对于Data.DBXPlatform
类,它仍然没有解析它,而是在当前类型的正下方添加了另一个内容类型
这只发生在WebBroker REST
中,如果我通过DataSnap服务器创建项目,我通常会得到它。但是我需要WebBroker REST
来访问客户发送给我的信息
如何使问题发生的示例
- 从
DataSnap REST应用程序创建项目
uses System.StrUtils, Data.DBXPlatform;
function TServerMethods1.EchoString(Value: string): string;
begin
Result := Value;
GetInvocationMetadata.ResponseContentType := 'application/json';
end;
示例响应头
连接:关闭内容类型:text/html;字符集=ISO-8859-1
内容长度:25
日期:2013年9月10日星期二16:41:37 GMT
Pragma:dssession=542354.126073.592372,dssessionexpires=1200000
内容类型:application/json在新建DataSnap WebBroker应用程序向导中,您可以选择创建单独的服务器模块。在生成的单元WebModuleUnit1.pas中有一个变量WebModuleClass,它是TWebModule的后代。此WebModuleClass对象具有类型为TwebreResponse的公共属性响应,这使您能够设置ContentType
我在WebModuleUnit1.pas创建函数中使用Delphi XE7。过程TWebModule1.WebModuleAfterDispatch(发送方:TObject;请求:TWebRequest;响应:TWebResponse;处理的变量:Boolean);begin Response.ContentType:=“应用程序/json”;结束;响应头是。连接:关闭内容类型:application/json;charset=ISO-8859-1内容长度:25日期:2013年9月10日星期二16:41:37 GMT Pragma:dssession=542354.126073.592372,dssessionexpires=1200000但我只需要内容类型的应用程序/json,有什么?你知道吗?