公司内部图片服务器
192.168.1.17:6680/imgweb/
已确认该服务可以正确访问并使用
其中
拥有两张图片
1、http://192.168.1.17:6680/imgweb/resources/share/1570677374969_401.jpg
2、http://192.168.1.17:6680/imgweb/resources/share/1575255135944_888.jpg
图片1为手动上传,图片2为程序上传
前端集成富文本编辑器tinymce 过程中(可忽略)
发现 使用
以下代码出现异常情况
params:url, headers, withCredentials
var xhr = XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4) {
resolve({
status: xhr.status,
blob: this.response
});
}
};
xhr.open('GET', url, true);
xhr.withCredentials = withCredentials;
global$1.each(headers, function (value, key) {
xhr.setRequestHeader(key, value);
});
xhr.responseType = 'blob';
xhr.send();
出现异常 并且只有图1的情况出现异常
Access to XMLHttpRequest at 'http://192.168.1.17:6680/imgweb/resources/share/1570677374969_401.jpg' from origin 'http://192.168.1.3:8083' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Uncaught (in promise) ImageProxy HTTP error: Incorrect Image Proxy URL
图二可以正常访问
请帮忙分析原因和提出改进方式
或留下部分分析结果以及联系方式
本人联系方式 qq 380389309(不常用)
请各位仔细阅读我发生问题的现象,并且进行分析后回答,不要回复我跨域如何配置,注意事项,需要解析为何同服务器一张图片可以正常访问,另外一张不可以。当然,问题原因确实事跨域导致的,当前情况事跨域现象一定会发生,服务器已经配置了允许跨域,但是部分图片文件报错。
这个我之前碰到过,修改http://192.168.1.17服务器的Access-Control-Allow-Origin属性配置就行。帮到您了麻烦送我点c币,我想下点东西。
这个问题我遇到过,按照下面的办法最后解决的
https://blog.csdn.net/weixin_30952535/article/details/94939396
如果有帮助,请采纳,着急下载没有积分
看不出有啥问题,希望对你有点帮助,参考一下这个吧:https://blog.csdn.net/weixin_34392843/article/details/91367766
我之前也遇见类似的问题,使用的阿里云的oss,当时配置了跨域,其他图片都没有问题,有一张图片一直有跨域的提示,,后来经过排查,发现有问题:
1、页面上存在 img 标签,引入了该地址,并且没有加 crossOrigin 属性
2、当使用 ajax 来请求图片的时候,跨域了。
后来分析原因,步骤 1 的时候,img 标签加载了跨域的图片,被浏览器缓存。。然后步骤2用 ajax来加载的时候,直接取的缓存里面的,所以报跨域错误。
解决办法,给 img 标签加 crossOrigin