2014-08-28 66 views
2

我正在實施Cloudinary jquery上傳。從我的文件上傳網頁中,如果我衝浪到另一個網站(google.com或任何外部網站),然後單擊瀏覽器上的後退按鈕進入該文件上傳頁面,則上傳失敗。Cloudinary jQuery直接上傳問題

該錯誤消息我得到的回覆是(從螢火蟲):

400錯誤的請求 {「錯誤」:{「消息」:「上傳預設使用未簽名的上傳時,必須指定上傳預設」}}

  • 我沒有啓用Cloudinary管理控制檯 上簽名上傳,因爲我的本意是簽名上傳

ŧ他是在後端的數據形式的數據創建的JSON數據:

{「時間戳」:1409146953,「回調」:「http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html」,‘簽名’:‘19071a3e822eed51238454e359589f52cccca042’,‘API_KEY’ :「224456847515364」 }

下面是JavaScript和輸入HTML:

<script type="text/javascript」> 
    $.cloudinary.config({cloud_name:'dashy', api_key:’XXXXXXXXXXXXXXX'}); 
    </script> 
    <input name="file" type="file" id="uploadinput" class="cloudinary-fileupload" data-cloudinary-field="image_upload" 
data-form-data="" ></input> 
    <script> 
     $.ajax({ 
      url: '/filer', 
      type: 'POST', 
      success: function(response){ 
        $('#uploadinput').attr('data-form-data', response); 
      } 
     }); 
    </script> 

這是Ruby後端產生JSON:

post '/filer' do 
     ts = Time.now.getutc.to_time.to_i.to_s 
     secret="XXXXXXXXXXXXXXXXXXXXXX" 
altogether="callback=http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html&timestamp="+ts+secret 
     sig=Digest::SHA1.hexdigest altogether 
     ts = Time.now.getutc.to_time.to_i 
     {:timestamp => ts, :callback => "http://newappsure.herokuapp.com/vendor/cloudinary/cloudinary_cors.html", :signature => sig, :api_key =>"XXXXXXXXXXXXXXXX"}.to_json 
end 

請幫我理解我做錯了什麼?

回答

1

雖然您的解決方案可以工作,更好的方法是更新上傳參數來調用$(...).fileupload({formData: data})其中data是散列參數(不是JSON序列化)。 欲瞭解更多信息: http://support.cloudinary.com/entries/24950218-Why-is-updating-a-cloudinary-fileupload-field-dynamically-not-working-

+0

你可以給我一個參數哈希的例子嗎? – Vince 2014-09-02 09:52:46

+0

你應該通過一個JSON,例如:'{ 「時間戳」:1409836869, 「渴望」: 「t_my_transformation」, 「use_filename」:1, 「unique_filename」:1, 「簽名」: 「52f06bd404778454dd6dc6973f6ea0d8ef55ca25」, 「API_KEY」: 「219441847515364」}'。請注意,您也可以使用未簽名的上傳並使用這些方法來爲您簡化此任務。請參閱參考以下內容:https://github.com/cloudinary/cloudinary_js/blob/master/js/jquery.cloudinary.js#L687 – 2014-09-04 20:52:18

+0

看S形我仍然能夠上傳的不是間歇性問題。你可以幫我嗎?該代碼是在這裏:http://jsfiddle.net/tschew/oxdmvbew/ – Vince 2014-09-16 10:47:10