1
mkeith 2013-08-03 20:49:56 +08:00 via Android
后台post
|
3
shiny 2013-08-03 22:19:23 +08:00
Chrome扩展开发里,允许 post 是因为声明了需要的权限。在普通的 web 环境里是有严格的安全限制的。
你所说的「本地调试」是指以 HTML 文件的方式调试吗?那还是搞成扩展吧,两者的环境差距还是很大的,而且在扩展里照样可以用审查元素。 |
4
jesse_luo 2013-08-04 04:17:08 +08:00
改成ip访问形式试试……
如果你是content script,默认是可以跨域的,只是要在manifest里加入权限,如: "permissions": [ "tabs", "http://*.duokan.com/" ] |
5
zippera OP @shiny 我在本地调试用html文件直接打开、用本地加载扩展、用localhost的方法都不行,服务器地址是https的
|
6
zippera OP @jesse_luo ip访问试了试,还是不行。没有用content script,加入url的权限后还是不行。请问除了$.post()外,还可以用别的方法提交吗?
|
7
zippera OP 错误信息:
XMLHttpRequest cannot load https****. Origin http://127.0.0.1 is not allowed by Access-Control-Allow-Origin. |
8
jyhmijack 2013-08-05 14:57:02 +08:00
v8全是异步无阻塞的,把你post后面的内容全部写在post的回调里面就好了。
|
9
otakustay 2013-08-05 15:23:51 +08:00
撞上XMLHttpRequest的跨域安全性了
你的服务器要接受一个OPTIONS(不是POST,是OPTIONS)请求,并在这个请求中返回一个HTTP头Access-Control-Allow-Origin: *;然后这个post请求才能成功 |
10
zippera OP |
11
gangsta 2013-08-05 22:27:33 +08:00
Content Script+1,直接支持跨域,不受同源策略的限制
|
12
ysdj 2013-08-05 22:28:53 +08:00
chrome扩展似乎不支持https跨域?
|
13
scofier 2014-11-17 11:51:46 +08:00
我用$.post("xxx",
{"title":d.title,"url":d.url,"content":con},function() { alert("ok"); }); 发现con字段太大,字符串长度8000多, 就执行不了, 难道chrome扩展里面post限制了长度? 纯浏览器执行jquery的post是可以正常post数据的, 有人遇到过这种问题吗? |