如何返回字符串作为对http请求的响应

时间:2017-05-27 16:53:37

标签: javascript java angularjs spring maven

在我的Maven应用程序中,我已将http请求映射到此函数(使用spring框架),我想检查其中的内容并将响应作为文本发送。然后我想从angularjs发送该请求并将该响应存储到angularjs控制器的某个变量中。这就是我的尝试。

@RequestMapping(path="/play", method={RequestMethod.POST}, produces = {MediaType.APPLICATION_JSON_UTF8_VALUE})
public String someFunction(){
    //...
    return "some text";
    }

$scope.getResponse = function(param1, param2...){

            $http.post("url..").then(
                    function(response){
                        $scope.response = response.data.response;
                        console.info('success');
                    },
                    function(response){
                        console.info('failure');
                    })

        }

Http被正确映射并且可以在浏览器中运行,问题是如何将文本响应存储到控制器的某些angularjs变量中。

1 个答案:

答案 0 :(得分:1)

似乎$http发现很难在响应中解析无效的JSON数据。 我们在那里有produces = {MediaType.APPLICATION_JSON_UTF8_VALUE}用于API并发送纯文本。这就是它进入失败处理程序的原因。

将媒体类型更改为MediaType.TEXT_PLAIN_VALUE并查看其是否有效......