如何使用Javascript从URL获取HTTP标头(Content-Type)

时间:2015-05-08 01:47:18

标签: javascript php jquery

下午好!这就是我想要实现的目标。

我有一个输入,允许用户输入URL(主要用于图像),但它也可以是不同类型的文件。我正在寻找一种方法来验证网址是否存在并获得mime类型。

以下是我的javascript测试jsfiddle

我找到了一种使用PHP和AJAX的方法来实现这个功能:

PHP:

 usernameField.inputAccessoryView = [[CostcoLoginView alloc] init ];

我不确定这是正确的做法,有没有人有更好的想法?

非常感谢!

1 个答案:

答案 0 :(得分:0)

如果您未在url电话上指定type,jQuery将已根据内容类型转换回复(请查看此$.ajax()了解详情)。

所以你所能做的就是检查生成的响应的类型,推断出已发送的Content-Type:

$.get("myPage.html", { }, function(data) {
  if(typeof(data) === "string") {
    //html
  } else {
    //JSON
  }
});

在这种情况下,它不起作用,因为谷歌明确禁用其托管图像上的跨源请求。如果您在启用Firebug的情况下运行测试,您将收到消息:

  

阻止跨源请求:同源策略禁止读取   https://www.google.com/images/srpr/logo11w.png处的远程资源。   这可以通过将资源移动到同一个域来修复   启用CORS。

然而,启用CORS需要服务器端的一些工作,我不认为谷歌愿意这样做。

修改

如果要生成某些文件的客户端预览,请尝试使用以下内容: