简体   繁体   English

如何在 Javascript 中设置状态码 201?

[英]How to set status code 201 in Javascript?

I'm new to Javascript and I'm currently trying to set status code as 201 in headers but I'm getting 200. I want to set headers 201 and print success response else some fault error msg but it's not working as expected.我是 Javascript 的新手,我目前正在尝试在标题中将状态代码设置为 201,但我得到了 200。我想设置标题 201 并打印成功响应,否则会出现一些错误错误消息,但它没有按预期工作。 Below is the code which I have tried:以下是我尝试过的代码:

var sm = require("service-metadata");
var hm = require("header-metadata");
var headers = hm.current;

var querystring = require("querystring");
var uri = sm.getVar("var://service/URI");

var data = querystring.parse(uri.split("?")[1]);
var response = {
  data: [
    {
      id: "02",
      Details: [
        {
          errorMessage: "Success",
          errorCode: 201,
        },
      ],
    },
  ],
};
var Error = {
  ErrorDetails: {
    Reason: "Fault",

    errorMessage: "Runtime Error",
  },
};
if (response.statusCode == 201) session.output.write(response);
else {
  session.output.write(Error);
}

The code you have here, as written, is checking for a value that doesn't exist.您在此处编写的代码正在检查不存在的值。 Thus it's always printing the "Error" object.因此它总是打印“错误”object。

// response.statusCode doesn't exist in your response object,
// so it is equal to "undefined" instead of 201 or 200.
// this condition will never be true.
if (response.statusCode == 201)

Based on the way you've created your response object, you should be doing this:根据您创建响应 object 的方式,您应该这样做:

if (response.data[0].Details[0].errorCode == 201)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM