【问题标题】:Change contentType dynamically in JQuery/AJAX在 JQuery/AJAX 中动态更改 contentType
【发布时间】:2014-05-14 19:24:08
【问题描述】:

是否可以使用 JQuery/AJAX 动态更改 contentType?

例如:

$("li").click(function(){
   $("#pdfDiv").hide();
       $.getJSON("IndexServlet", {id: this.id,"EVENT":"GETPDF"}, function(data){
            var url1 = 'data:application/pdf;base64' + data;
            var setContent = $.ajax({
                     contentType:"application/pdf"
            });                     
   setContent.done(function(){
     $("#pdfDiv").append(url1).show();
   });
});

这样做的原因是因为我正在通过响应检索 JSON 数据,但我想以某种方式使用 JSON 数据(它是 PDF 的 64 位字符串)并将 PDF 显示到页面。

【问题讨论】:

    标签: javascript jquery ajax json pdf


    【解决方案1】:

    不,当数据被传递到getJSON() 的完成函数时,内容类型已经被解释并且根据该类型解析数据。内容类型需要与数据一起返回或在您进行 ajax 调用之前进行适当设置,否则您必须连接到 jQuery 的 ajax 基础设施才能参与猜测内容类型应该是什么。

    如果您想以两种不同的方式自己解释相同的数据,则必须选择一种不进行解析的内容类型(如字符串),然后自己进行双向解析。

    【讨论】:

    • 如何返回内容类型和数据?
    • @ChandlerE。 - 在您的服务器上,您可以在对 Ajax 请求的响应中设置内容类型标头。
    猜你喜欢
    • 1970-01-01
    • 2013-07-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-25
    • 2019-08-30
    • 2012-12-28
    • 1970-01-01
    相关资源
    最近更新 更多