绕过 XMLHttpRequests 的缓存
Cache bypassing for XMLHttpRequests
我想在发出 XMLHttpRequest 时绕过缓存。多亏了我找到了解决方案:
但是我没有完全理解解决方案...
替换:
request.open('GET', url);
来自:
request.open('GET', url + ((/\?/).test(url) ? "&" : "?") + (new Date()).getTime());
效果很好,但我不明白:
我们从中调用方法“test(url)”的对象(/\?/)
是什么?
在什么情况下我必须输入“?”在这种情况下我必须把“&”放在
urls 结束,在附加 Date().getTime()
?
之前
感谢帮助
我们从中调用方法“test(url)”的对象 (/\?/) 是什么?
它是一个正则表达式文字,test()
is a method of the RegExp
从该文字创建的实例。它通过检查 url
是否已经具有参数列表定界符 ?
来检查 url
是否已经具有参数列表
在什么情况下我必须加上“?”在这种情况下,在附加 Date().getTime()?
之前,我必须在 urls 的末尾放置“&”
这取决于 url 是否有参数列表。因此,如果您的 url
是:
http://example.com/somepage.php
没有参数列表,您需要添加 ?
来表示 url 参数列表的开始
http://example.com/somepage.php?1234567
如果你的 url
已经有一个像上面那样的 ?
你需要添加 &
来表示列表中的不同参数,这样你就不会更改值先前存在的参数
http://example.com/somepage.php?someparam=somevalue&12345678
我想在发出 XMLHttpRequest 时绕过缓存。多亏了我找到了解决方案:
但是我没有完全理解解决方案...
替换:
request.open('GET', url);
来自:
request.open('GET', url + ((/\?/).test(url) ? "&" : "?") + (new Date()).getTime());
效果很好,但我不明白:
我们从中调用方法“test(url)”的对象
(/\?/)
是什么?在什么情况下我必须输入“?”在这种情况下我必须把“&”放在 urls 结束,在附加
之前Date().getTime()
?
感谢帮助
我们从中调用方法“test(url)”的对象 (/\?/) 是什么?
它是一个正则表达式文字,test()
is a method of the RegExp
从该文字创建的实例。它通过检查 url
是否已经具有参数列表定界符 ?
url
是否已经具有参数列表
在什么情况下我必须加上“?”在这种情况下,在附加 Date().getTime()?
之前,我必须在 urls 的末尾放置“&”这取决于 url 是否有参数列表。因此,如果您的 url
是:
http://example.com/somepage.php
没有参数列表,您需要添加 ?
来表示 url 参数列表的开始
http://example.com/somepage.php?1234567
如果你的 url
已经有一个像上面那样的 ?
你需要添加 &
来表示列表中的不同参数,这样你就不会更改值先前存在的参数
http://example.com/somepage.php?someparam=somevalue&12345678