2012-11-22 71 views
0

心中已经被与POST上Picasa的API挣扎。 这里是代码:POST请求到Picasa API

$.ajax({ 
    type: "POST",    
    url: 'https://picasaweb.google.com/data/feed/api/user/' + uid + '/albumid/' + album_id + '/photoid/' + photo_id, 
    crossDomain: true, 
    data: { content: content }, 
    success: function() { alert("Success"); }, 
    error: function() { alert('Failed!'); } 
}); 
我已经通过检索得到一些信息没有问题

现在到了有趣的部分,当我尝试测试与谷歌服务出现此错误:

XMLHttpRequest cannot load 
https://picasaweb.google.com/data/feed/api/user/userid/albumid/albumid/photoid/photoid?content=foo%bar. 
Origin http://localhost:3000 is not allowed by 
Access-Control-Allow-Origin 

而当我在Firefox中尝试时,请求标头方法更改为OPTIONS,状态为204: no content
此外,我试图将datatype更改为jsonp,但随后HTTP方法更改为GET并且它检索有关图片的信息。

+0

你有没有设法找到一个解决办法? –

回答

1

Access-Control-Allow-Origin即将到来是因为您正在对服务器进行ajax调用,该服务器与您当前的域不同。 更多here

jsonp会不禁为POST请求,因为你只能让GET要求与jsonp

恕我直言,你应该尝试从服务器端而不是客户端脚本发出POST请求。