使用 Javascript XMLHttpRequest 将图像发布到 Picasa

发布于 2024-12-01 13:28:16 字数 670 浏览 0 评论 0原文

我正在尝试使用 javascript 将图像发布到 picasa。我已经获得了所需的代币。但是当我发帖时,我收到错误“204 无内容”

这是我的代码。

function send()
{
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function ()
{
if(xhr.readyState == 4)
alert(xhr.status);
}
xhr.open("POST","https://picasaweb.google.com/data/feed/api/user/default/albumid/default", true);
var type = document.getElementById('file').files[0].type;
xhr.setRequestHeader('Accept','message/x-jl-formresult');
xhr.setRequestHeader("content-type",type);
xhr.setRequestHeader('Content-Length',document.getElementById('file').files[0].size);
xhr.sendAsBinary(document.getElementById('file').files[0].getAsBinary());

}

I am trying to post an image to picasa using javascript. I have got the required tokens. But when I post, I get an error "204 no content"

Here is my code.

function send()
{
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function ()
{
if(xhr.readyState == 4)
alert(xhr.status);
}
xhr.open("POST","https://picasaweb.google.com/data/feed/api/user/default/albumid/default", true);
var type = document.getElementById('file').files[0].type;
xhr.setRequestHeader('Accept','message/x-jl-formresult');
xhr.setRequestHeader("content-type",type);
xhr.setRequestHeader('Content-Length',document.getElementById('file').files[0].size);
xhr.sendAsBinary(document.getElementById('file').files[0].getAsBinary());

}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

遥远的她 2024-12-08 13:28:16

你知道204是什么意思吗?

204 No Content 服务器成功处理了请求,但是
不返回任何内容

http 状态代码

服务器说它很好,没有任何内容返回。

Do you know what 204 means?

204 No Content The server successfully processed the request, but
is not returning any content

http status codes

The server is saying it was good and there is nothing to return.

木格 2024-12-08 13:28:16

问题在于 dojo.xhrget,而不在于您的语法或 picasa。查看 firebug 中的网络面板,您会发现 dojo.xhrGet 没有发送 picasa 所需的请求标头中的会话 cookie。

尝试使用 jQuery.Get,您会发现它工作正常。

The problem is with dojo.xhrget, not with your syntax or picasa. Look in the net panel in firebug and you'll see that dojo.xhrGet does not send the session cookie in the request header s that picasa requires.

Try using jQuery.Get and you'll find it works fine.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文