我最初使用Jquery从一个$ .get函数获取一个url,但是第二个结果导致了一个交叉orgin请求,因为我试图用我从api获得的url搜索url。
我想知道是否有办法将此发布到PHP以及是否可以使用curl将var url提交到get函数以避免此原因问题,然后将其拉回到前端以显示在建设性的方式
$(document).ready(function(){
$.get({
url: "http://www.dnd5eapi.co/api/races/",
dataType: "JSON",
success: function(result){
result.results.forEach(function(element) {
$("#racebox").append('<option value="'+element.url+'">'+element.name+ ' '+'</option>');
});
$('#racebox').on('change',function(){
var raceChoice = $('#racebox').val();
console.log(raceChoice);
$.get({
url: raceChoice,
dataType: "JSON",
success: function(result){
result.starting_proficiencies.forEach(function(element) {
$("#output").append(element.name);
});
}
});
});
}
});
});
</script>
</head>
<body>
<form>
<select id="racebox">
</select>
</form>
<div id="output"></div>
这是提供跨源问题的代码,我希望尝试构建一个curl后端来代替处理这些信息。
答案 0 :(得分:0)
如果您是构建api的人,可以添加标题以消除交叉原点。
<?php
header("Access-Control-Allow-Origin: *");
?>
您可以使用承载将使用api
的应用的域名替换*否则,您可以使用Guzzlle而不是curl来使用PHP来通过编写调用API的方法来使用API,然后使用Jquery来调用这些方法。
但我认为curl也是一种调用API的方法