【问题标题】:how to set a dynamic URL to the XHR POST parameter?如何为 XHR POST 参数设置动态 URL?
【发布时间】:2026-01-14 14:40:01
【问题描述】:

注意:请注意这个问题可能很愚蠢,因为我刚刚开始客户端开发。 我需要向通过 JSONP 检索的动态链接发出 XHR POST 请求。但是由于某些原因它不起作用。基本上,POST url“youtube_url_upload”变得未定义。

 xhr.open("POST", youtube_url_upload);
这是代码 sn-p : var get_youtube_service_url ="http://video.example.com/youtubeupload?jsoncallback=?"; $.ajax({ 类型:“获取”, 网址:get_youtube_service_url, 数据类型:“jsonp”, 缓存:假, 成功:函数(数据){ // 获取 YouTube // var y_url = data.url; var token = data.token; var youtube_url_upload = data.url + "?nexturl="+encodeURIComponent("http:// sell.example.com/youtube.html"); 调用令牌(令牌); 上传文件(youtube_url_upload); } }); var bytesUploaded = 0; var bytesTotal = 0; …… 函数上传文件(youtube_url_upload){ var xhr = new XMLHttpRequest(youtube_url_upload); xhr.upload.addEventListener("进度", uploadProgress, false); xhr.addEventListener("加载", uploadComplete, false); xhr.addEventListener("错误", uploadFailed, false); xhr.addEventListener("abort", uploadCanceled, false); xhr.open("POST", youtube_url_upload); xhr.send(fd); intervalTimer = setInterval(updateTransferSpeed, 500); } ......

【问题讨论】:

  • 您确定您得到了正确的数据响应吗?在成功回调中尝试 console.log(data) 看看它显示了什么。
  • 这样的代码对我来说看起来不错。您是否尝试通过 ajax 将视频上传到 youtube??

标签: javascript jquery ajax


【解决方案1】:

成功回调将字符串作为“数据”,而不是对象
它可能是一个 json 所以使用

$.parseJSON ( data )

【讨论】: