저는 nutritionx.com public APIS를 사용하는 웹 애플리케이션을 작성하려는 신참 개발자입니다. 나는 '체다 치즈'내가 POST를 사용하려고하면POST 요청을 사용하여 json 객체 보내기 AJAX
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
{
// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
var responseTxt = xmlhttp.responseText;
var obj = JSON.parse(responseTxt);
document.getElementById("myDiv").innerHTML=obj.hits[0].fields.nf_total_fat;
}
}
xmlhttp.open("GET","https://api.nutritionix.com/v1_1/search/cheddar%20cheese? fields=item_name%2Citem_id%2Cbrand_name%2Cnf_calories%2Cnf_total_fat&appId=XYZ&appKey=XYZ",true);
xmlhttp.send(); // works!
</script>
, 그것은 (I 보내는 매개 변수에 대한 내 요청 형식이 잘못되었다고 의심)이 작동하지 않습니다
의 지방 함량을 가져 오기 위해 자바 스크립트의 다음 조각이// What I tried:
// xmlhttp.open("POST","https://api.nutritionix.com/v1_1/search",true);
// xmlhttp.setRequestHeader("Content-type","application/json");
// xmlhttp.send("{"appId":"XYZ", "appKey":"XYZ","query":"Cheddar Cheese"}");
Json 객체를 Javascript에서 POST를 사용하여 요청하는 서버로 올바르게 보내는 방법은 무엇입니까? API 문서는 다음 샘플을 제공합니다 :
컬 또는 PHP를 사용하거나 javascript로 충분합니까? 이상적으로 내가 시도한 것의 라인을 따라 뭔가를 원한다.
echo $_POST['appId'] ; // shows XYZ
echo $_POST['appKey'] ; // shows XYZ
echo $_POST['query'] ; // shows Cheddar Cheese
경우 : 읽기 :
첫 번째 및 마지막 큰 따옴표를 작은 따옴표로 바꾸어보십시오. –
프로세스를 단순화하기 위해 jQuery 사용을 고려 했습니까? jQuery는 매우 간단하다.'$ .post ("ajax/test.html", function (data) {$ (".result") .html (data);});'(예제는 jQuery 문서에서 가져온 것이다. – FlyingColours