将 Angular $http.put 的数据元素的字符串转换为 JSON 对象

Convert a String to JSON object for the data element of an Angular $http.put

现在我有以下代码。我需要向放置请求的正文发送一个字符串。该字符串需要有效 json。我遇到的问题是消息是作为 foo 而不是 "foo" 传递的。我在下面做了以下黑客攻击,在开始和结束时加了双引号。在 angularjs 1.5 中有更好的方法吗?

 var pushMessage = function (message) {

        var data = '"' + message + '"';//this doesnt seem ideal

        var apiPath = "http://" + $location.host() + ":" + $location.port() + "/api/setMessage";
        return $http.put(apiPath, data).then(function (response) {
            return response.data;
        });
    };

如果消息是 json 您可以将其字符串化为

var data = JSON.stringify(message);

如果您要编写 JavaScript,您将需要经常使用 JSON,最好的起点是 MDN MOZILLA