2013-01-18 112 views
2

我爲客戶端創建了一個自定義產品配置程序,它使用html2canvas在產品定製後生成產品圖像。它之前完美的工作,但現在我已經意識到它試圖打電話給:html2canvas.appspot.com並返回一個404錯誤。這裏是我的代碼:Html2Canvas Appsot服務器關閉

// JavaScript Document 
$('#addToCart').live('click', function(event) { 
    event.preventDefault(); 
    var target = $('.customstole'); 
    html2canvas(target, { 
     onrendered: function(canvas) { 
      var data = canvas.toDataURL(); 

      alert(data); 
      $("#dataUrl").val(data); 
      // data is the Base64-encoded image passed to a hidden input 
      $('form#stoleAddForm').submit(); 
     } 
    }); 
}); 

我的問題是...我怎麼能修改此代碼,以便它不會使調用html2canvas.appspot.com可言。我一直在這裏閱讀堆棧和谷歌很多,我聽說,因爲我的圖像和一切都在我的網頁上,我不需要一個「代理」的網址。但我嘗試添加代理:false,代理:''和代理:未定義,並且仍然不斷向其發出呼叫。

如果你想看到這個動作和螢火蟲,或任何其在:http://stoles.com/stoles/page/customStole

的用戶名是:亞歷克斯 密碼是:超人

如果你點擊「加入購物車」你會發現它在JS窗格中引發了404錯誤。

我在這方面的損失,所以任何幫助表示讚賞。

+0

你張貼沒有工作 – hek2mgl

+0

對不起它全部小寫的憑據: 用戶名:密碼亞歷克斯:超人 –

+0

我要看看。順便說一句,好的應用程序hehe – hek2mgl

回答

4

我閱讀html2canvas的來源,它的確如你所說。如果您不需要代理,則必須關閉此選項,因爲它默認爲http://html2canvas.appspot.com/

試試這個:

// JavaScript Document 
$('#addToCart').live('click', function(event) { 
    event.preventDefault(); 
    var target = $('.customstole'); 
    html2canvas(target, { 
     onrendered: function(canvas) { 
      var data = canvas.toDataURL(); 
      alert(data); 
      $("#dataUrl").val(data); 
      // data is the Base64-encoded image passed to a hidden input 
      $('form#stoleAddForm').submit(); 
     }, 

     // disable the proxy feature 
     proxy : false 
    }); 
}); 

我用Firebug控制檯測試它,它的作品! (和螢火蟲石頭!)

+0

@ Daniel White:我真的想用我的頭像來測試'上傳藝術'功能:) – hek2mgl

+0

嘿,男士感謝您的幫助。這並沒有完全解決它,但你指出了我的正確方向。答案是:「代理人:」;「它在「投降」之前。像現在的冠軍一樣工作。謝謝! –