如何通过JavaScript发送跨域POST请求?
注意 - 它不应该刷新页面,然后我需要抓取并解析响应.
所以我有这个jQuery AJAX调用,响应来自服务器的302重定向形式.我想采用这种重定向并将其加载到iframe中,但是当我尝试使用javascript警报查看标题信息时,即使firebug正确地看到它,它也会出现空值.
这是代码,如果它有帮助:
$j.ajax({
type: 'POST',
url:'url.do',
data: formData,
complete: function(resp){
alert(resp.getAllResponseHeaders());
}
});
Run Code Online (Sandbox Code Playgroud)
我真的无法访问服务器端的东西,以便将URL移动到响应主体,我知道这将是最简单的解决方案,因此任何有关解析标头的帮助都会非常棒.
在phonegap中,我在使用jQuery AJAX调用PHP文件时遇到了问题.调用文件时发生的错误是:
请求的资源上不存在"Access-Control-Allow-Origin"标头
Google表示将此代码header('Access-Control-Allow-Origin: *');放在当前的PHP文件头中.我把代码放在标题中,但仍然没有变化.我用它附上了我的jsfidde.
文件connectionsqlphp.php代码在这里
<?php
header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
echo "hi";
?>
Run Code Online (Sandbox Code Playgroud) 用户可以在我的网站上的文本框中粘贴网址.当他们这样做时,我想通过jQuery AJAX获取该URL并从中读取opengraph元数据.我怎样才能做到这一点?
我读过这篇文章如何从带有网址的网页上阅读Open Graph和meta标签,但其中的链接被破坏,它比我需要的更高级,而不是在jQuery :)
除了opengraph元数据之外我不需要任何其他内容,因此不需要解析结构等.
以下是页面示例:http://www.ebay.com/itm/Microsoft-Surface-Pro-3-12-Tablet-256GB-SSD-Intel-Core-i7-Haswell-8GB-RAM-/281656969697
因此,我想提取的其中一个领域<meta property="og:image" content="http://i.ebayimg.com/images/i/281656969697-0-1/s-l1000.jpg" ></meta>,确切地说是价值http://i.ebayimg.com/images/i/281656969697-0-1/s-l1000.jpg
我现在拥有的是从这里复制的:http://icant.co.uk/articles/crossdomain-ajax-with-jquery/error-handling.html
请参阅我的评论@Flo,我想要提取打开的图形数据,但我不知道如何解析JSON响应.
<a href="www.ebay.com/itm/Microsoft-Surface-Pro-3-12-Tablet-256GB-SSD-Intel-Core-i7-Haswell-8GB-RAM-/281656969697" class="ajaxtrigger">Load Ajax Content</a>
<div id="target"></div>
<script language="javascript" type="text/javascript">
$(function () {
$('.ajaxtrigger').click(function () {
var container = $('#target');
container.attr('tabIndex', '-1');
var trigger = $(this);
var url = trigger.attr('href');
if (!trigger.hasClass('loaded')) {
trigger.append('<span></span>');
trigger.addClass('loaded');
var msg = trigger.find('span').last();
} else {
var msg = trigger.find('span').last();
}
doAjax(url, msg, container);
return false;
});
});
function doAjax(url, …Run Code Online (Sandbox Code Playgroud) 我从远程服务器获取XML文件,其中包含相当静态的数据.这是我的代码:
$dom = simplexml_load_file("foo.xml");
foreach ($dom->bar->baz as $item) {
echo $item;
}
Run Code Online (Sandbox Code Playgroud)
由于数据很少更改,因此无需在每个页面加载时ping服务器...如何以简单的方式缓存foo.xml?请记住,我是初学者......
谢谢!
我已经从其他网站请求json数据,但是遇到了标题中访问控制允许源的问题,我不知道如何在标题中设置访问控制允许源,我将源代码放在iis8中以访问来自另一个iis8 API来源的json数据。
$.ajax({
type: "GET",
url:rootURL,
xhrFields: {
withCredentials: false
},
headers: {
"Access-Control-Allow-Origin: ": "*",
"Access-Control-Allow-Methods: ": "GET",
"Access-Control-Allow-Headers: ": "Authorization",
},
dataType: "json",
success: function(data) {
},
error: function() {
alert("An error occurred while processing JSON file.");
}
});
Run Code Online (Sandbox Code Playgroud)