简体   繁体   中英

From within javascript, how can I load a script from another domain as a string?

I have an application which is written entirely as html/js (there is no server). Using javascript, I would like to retrieve a script from another domain and get its contents as a string. I do not want to evaluate the script. Is there any hack which can make this possible?

I do not think so. If there were a way, it would violate the ban of cross domain downloads. I guess there is a way to relax these limitations by properly configuring the security on the browser, but it is messy and unreliable among other things because of browser dependencies. You will have to do it on the server

对我来说听起来像JSONP

You can't. The cross-domain security model implemented by browsers prevents this. You'd need to go through another a server on your domain as a proxy which can access the remote resource for you.

It's definitely possible. Instead of using jQuery or other libraries that implements the JSONP technique, implement JSONP yourself!

There's a few steps, but at the end, skip the "eval" part. Instead do what you want to do with the javascript string...

A nice in depth article is hard to find but here's one I quickly found:

http://niryariv.wordpress.com/2009/05/05/jsonp-quickly/

JSONP is in fact, a pretty clever technique. Learning it just for the fun of it is worthwhile!

Good luck

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM