Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Azure功能:如何访问context.res.body的内容?_Javascript_Json_Azure_Azure Functions - Fatal编程技术网

Javascript Azure功能:如何访问context.res.body的内容?

Javascript Azure功能:如何访问context.res.body的内容?,javascript,json,azure,azure-functions,Javascript,Json,Azure,Azure Functions,在我的网站上,我使用azure函数上的FetchPost请求来存储一些数据。如果函数接收到所有数据,则context.res.satus设置为200,否则设置为400,context.res.body根据接收到的数据量设置为确认消息: var returnMessage = mail ? "User entry successfully added to the database" : "Please enter a valid email";

在我的网站上,我使用azure函数上的FetchPost请求来存储一些数据。如果函数接收到所有数据,则
context.res.satus
设置为200,否则设置为400,
context.res.body
根据接收到的数据量设置为确认消息:

    var returnMessage = mail ? "User entry successfully added to the database" : "Please enter a valid email";
    returnMessage = phone ? returnMessage : "Please enter a valid phone number";
    returnMessage = lName ? returnMessage : "Please provide your last name";
    returnMessage = fName ? returnMessage : "Please procide your first name";
    returnMessage = partKey ? returnMessage : "Something went wrong while generating a partition key";

    context.res = {
        status: (partKey && fName && lName && phone && mail) ? 200 : 400,
        body: returnMessage
    };
因此,我调用
fetch('URL',someStuff.),然后((res)=>processResponse(res))
在我的代码中,
res
总是返回得非常好,并传递给
processResponse
,如下所示:

function processResponse(response) {
    if (response.status === 200) {
        var test = JSON.stringify(response.body);
        document.getElementById("output").innerHTML = `<div class="alert alert-success" role="alert">${test}</div>`;
    }
}

但是每次我尝试
response.json()
,它都会失败,只有
.catch()
部分会运行。发生了什么以及如何访问存储在
response.body
中的字符串?

如果格式不是json,函数
response.json()
将返回错误。您可能没有在post请求中设置
内容类型:application/json
标题!(有关更多信息,请参阅)

我的回答有帮助吗,还是遇到了相同/新的问题?
function processResponse(response) {
    if (response.status === 200) {
        response.json()
            .then(function(data) {
                document.getElementById("output").innerHTML = `<div class="alert alert-success" role="alert">${data.message}</div>`;
            })
            .catch(function(){
                document.getElementById("output").innerHTML = `<div class="alert alert-success" role="alert">"Caught"</div>`;
            });
    }
}