gpt4 book ai didi

javascript - 我可以使用javascript调用delphi xe8 REST服务post吗?

转载 作者:行者123 更新时间:2023-11-28 00:00:35 25 4
gpt4 key购买 nike

获取请求的资源上不存在“Access-Control-Allow-Origin” header 。因此,不允许访问源“null”。 在浏览器 (Crome) 上。

服务器Delphi XE8 REST服务exe程序:

function TServerMethods.updateInsertData4(val1: string): string;
begin
result := val1;
end;

Javascript:

xmlhttp.open("POST", "http://..hods/InsertData4", true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.json = false;
xmlhttp.timeout = 1000 * 10;
xmlhttp.ontimeout = function () { alert("Timed out!!!"); }
xmlhttp.onerror = function () { alert("error"); }
xmlhttp.send('data');

最佳答案

来自CORS on DataSnap REST Server :

All you need to do is add a custom header in the Response before dispatching the result on the DataSnap server

procedure TWebModule1.WebModuleBeforeDispatch(Sender: TObject;
Request: TWebRequest; Response: TWebResponse; var Handled: Boolean);
begin
//allows cross domain calls
Response.SetCustomHeader('Access-Control-Allow-Origin','yourdomain.com');
if FServerFunctionInvokerAction <> nil then
FServerFunctionInvokerAction.Enabled := AllowServerFunctionInvoker;
end;

请注意,原始示例使用“*”而不是域名 (yourdomain.com),这将允许任何第三方访问您的 REST 服务器。

关于javascript - 我可以使用javascript调用delphi xe8 REST服务post吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31842699/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com