jquery ajax中load方法url写公网地址问题

https://www.runoob.com/jquery/jquery-ajax-load.html

以这个链接为例,就第一个实例来说,两个问题,第一,我把load里面第一个参数demo_test.txt改成一个公网地址,就会出现提示,大致意思是说不同域,报错如下,请问下如果我url确实想用公网的地址,要怎么解决

第二个问题,我把这个demo_test.txt里面的内容拷贝下来,在本地新建了一个文件,和主文件同目录,但是调用的时候始终不能调用到demo_test.txt这个文件,写成../demo_test.txt这样也不行,必须新建一个文件夹(假如文件夹名为test),然后写成test/demo_test.txt这样才能调用,请问是为什么呢,请知道的告诉下谢谢了

你要理解相对路径与绝对路径

./ :代表文件所在的目录(可以省略不写)

../ :代表文件所在的父级目录

../../ :代表文件所在的父级目录的父级目录

/ :代表文件所在的根目录

以你的第二个问题举例:你创建了一个与例子一样的txt放在主目录,则,调用的路径为$("#div1").load("/123.txt")而不是$("#div1").lo*d("../123.txt")

然后第一个问题:你的“公网地址” = 你的文件链接 或 外链

直接填入完整链接即可

如:

$("#div1").load("h*tp://********/123.txt");



$("#div1").load("h*tp://*************/xxx/xxxx/xxxx/123.txt")以此类推的形式


 

第一个问题就是跨域的问题,跨域要求同源,直接获取是拿不到的

跨域支持

1. 服务端开启cors

2. jsonp方式:

原理时通过script标签加载 因为script标签无跨域问题,前提是要服务端支持。

3. 第二种代理模式

通过服务转发

你好,谢谢你的回答,第二个问题我清楚了,但是第一个问题,如果我直接填入一个外链,他还是会提示跨域问题,解决办法我查了下好像服务器端和客户端都要改,现在想问下有没有只改服务器端的方法,我要达到的效果大概是这样,比如一个页面加载好了,有个按钮,点击按钮,他能把某个公网地址里面的一些图片在这个页面显示出来