2012-03-08 16 views
0

注:私はちょうどクライアント側の開発を始めたので、質問が愚かかもしれないことに注意してください。 JSONPで取得した動的リンクに対してXHR POST要求を行う必要があります。しかし、何らかの理由で動作しません。基本的にPOST URL "youtube_url_upload"は未定義になります。ここXHR POSTパラメータに動的URLを設定する方法はありますか?

 xhr.open("POST", youtube_url_upload); 
は、コードスニペットです:

 
    var get_youtube_service_url ="http://video.example.com/youtubeupload?jsoncallback=?"; 
    $.ajax({ 
      type: "GET", 
      url: get_youtube_service_url, 
      dataType: "jsonp", 
      cache : false, 
      success: function(data) { 

       // get youtube 
      // var y_url = data.url; 

      var token = data.token; 
      var youtube_url_upload = data.url + "?nexturl="+encodeURIComponent("http://selling.example.com/youtube.html"); 
      calltoken(token); 

      uploadFile(youtube_url_upload); 


      } 
      }); 

    var bytesUploaded = 0; 
     var bytesTotal = 0; 
...... 
 
function uploadFile(youtube_url_upload) { 

     var xhr = new XMLHttpRequest(youtube_url_upload);   
     xhr.upload.addEventListener("progress", uploadProgress, false); 
     xhr.addEventListener("load", uploadComplete, false); 
     xhr.addEventListener("error", uploadFailed, false); 
     xhr.addEventListener("abort", uploadCanceled, false); 
     xhr.open("POST", youtube_url_upload); 

     xhr.send(fd); 

     intervalTimer = setInterval(updateTransferSpeed, 500); 
     } 
..... 
+0

はあなたが確信している使用してJSONかもしれです適切なデータ応答を得ていますか?成功のコールバックでconsole.log(data)を試して、その内容を確認してください。 –

+0

そのようなコードは私には大丈夫です。あなたはajax経由でYouTubeにビデオをアップロードしようとしていますか? – dhaval

答えて

0

成功コールバックは、「データ」などの文字列を取得し、
オブジェクトではない、それはそう

$.parseJSON (data) 
関連する問題