2013-01-18 108 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

嘿,男士感谢您的帮助。这并没有完全解决它,但你指出了我的正确方向。答案是:“代理人:”;“它在“投降”之前。像现在的冠军一样工作。谢谢! –