我有一台thttpd (http://acme.com/software/thttpd/)网络服务器,上面有图片(svg)和JSON文件。
我正在开发一个小网页,它需要从我的web服务器检索这些资源,但我总是得到以下错误:
No 'Access-Control-Allow-Origin' header is present on the requested resource.我知道我必须在服务器端设置Access-Control-Allow-Origin头来接受来自任何源的请求,比如在Apache服务器上的.htaccess文件中:
Header set Access-Control-Allow-Origin *但是我真的不知道如何在thttpd服务器上做到这一点。到目前为止,我读过的所有文档和相关主题都是针对Apache、NGINX、IIS6等的。
我拥有修改web服务器上的配置文件所需的所有权限(我拥有root访问权限)。
请注意,我还尝试在我的HTTP请求和Javascript代码中使用"jsonp“作为数据类型,但在尝试检索JSON文件时出现以下错误。
Uncaught SyntaxError: Unexpected token :无论如何,我也需要获取SVG格式的图像,所以我希望避免使用"jsonp“作为数据类型。
下面是我的javascript代码:
31 $.ajax({
33 url: "http://ip_address/file.json",
34 dataType: "jsonp",
35 crossDomain: true,
36 data: {
37 format: "json"
38 },
39 success: function(data) {
40 var json = $.parseJSON(data);
41 alert(data);
42 }
43 });任何帮助都将不胜感激!
谢谢
发布于 2020-08-08 03:20:27
在libhttpd.c中,您可以更新响应字符串以包含
变化
"%.20s %d %s\015\012Server: %s\015\012Content-Type: %s\015\012Date: %s\015\012Last-Modified: %s\015\012Accept-Ranges: bytes\015\012Connection: close\015\012"
至
"%.20s %d %s\015\012Server: %s\015\012Content-Type: %s\015\012Date: %s\015\012Last-Modified: %s\015\012Accept-Ranges: bytes\015\012Access-Control-Allow-Origin: *\015\012Connection: close\015\012"
https://github.com/uoaerg/thttpd/blob/master/libhttpd.c#L652
https://stackoverflow.com/questions/37077304
复制相似问题