将 .JS 文件移动到 CDN:如何管理 AJAX 请求?
出于性能原因,我正在考虑将静态 .JS 文件移动到 CDN(例如 Amazon S3)。由于我的 PHP 文件和 mySQL DB 保留在我的主托管域上如果它们现在是跨域的,管理我的 JS AJAX 请求的最佳方式是什么?
目前它们在我的 .JS 文件中看起来像这样(带有相对路径):
$.ajax({
type: "POST",
url: "/myNearbyPhpFile.php",
data: {data:someData},
success: function($r){}
});
I am thinking of moving my static .JS files to a CDN such as Amazon S3 for performance reasons. As my PHP files and mySQL DB remain on my primary hosting domain what is the best way to manage my JS AJAX requests if they are now cross domain?
Currently they look like this within my .JS file (with relative paths):
$.ajax({
type: "POST",
url: "/myNearbyPhpFile.php",
data: {data:someData},
success: function($r){}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您使用来自其他域的js文件,则不存在跨域问题。
您发送请求的文档和资源,而不是 js 文件的位置
It's no cross-domain-issue if you use js-files from another domain.
The document and the ressource where you send yor request to matter, not the location of the js-file
只要嵌入 JavaScript 文件的 HTML 文件与 PHP/Python/JavaScript 调用的任何脚本位于同一域中,就没有跨域请求。嵌入文件的实际位置重要的唯一情况是使用相对 URL 的 CSS,例如图像(这些相对于 CSS 位置,而不是文档位置)。但同源策略无论如何都不适用于此。
所以:你不必做任何不同的事情。
As long as the HTML file embedding the JavaScript files is on the same domain as the PHP/Python/whatever scripts called by the JavaScript you do not have cross-domain request. The only case where the actual location of the embedded file matters is CSS using relative URLs e.g. for images (those are relative to the CSS location, not the document location). But the Same-Origin-Policy doesn't apply to that anyway.
So: You don't have to do anything different.