Angular 1.4.8:$ http.post防止角

时间:2018-04-06 05:58:09

标签: angularjs

我使用的是角1.4.8,这是我的$ http.post

return $http.post($rootScope.api_url + '/jhandler', {
               data: JSON.stringify({
                   'customerId': cID,
                   'method': 'getJ',
                   'data': data
               }),
               headers: {'Content-Type': 'application/json; charset=utf=8'}
           });

由于某种原因,响应不是json格式。在这里,我面临着两个问题。

    控制台中
  • 404错误。
  • angular尝试parseJson在控制台中抛出异常。

404错误对我来说没问题。 AngularJS使用JSON.parse解析respone,我希望它不解析。我想截取/覆盖处理响应的角度函数。

I really need to hide these errors

2 个答案:

答案 0 :(得分:1)

问题1:

发送json data不要将其字符串化,因为它需要json

return $http.post($rootScope.api_url + '/jhandler', {
    data: {
        'customerId': cID,
        'method': 'getJ',
        'data': data
     }
    },
    {
     headers: {'Content-Type': 'application/json; charset=utf=8'}
    }
});

问题2:

您的api url错误,因此返回404,请检查$rootScope.api_url中是否有内容且网址正确

答案 1 :(得分:0)

您的代码存在轻微问题,已标记了评论

语法应为import { NgModule, APP_INITIALIZER } from "@angular/core"; //create a function outside in the class module export function SetupApp(setup: SetupLocations) { return () => setup.initliaze(); } @NgModule({ providers: [ SetupLocations, { provide: APP_INITIALIZER, useFactory: SetupApp, deps: [SetupLocations], multi: true }] }) export class AppModule {} 但您已合并$http.post(url, data, config)data

config

正确的表格:

return $http.post($rootScope.api_url + '/jhandler', { /*this is data start*/
           data: JSON.stringify({
               'customerId': cID,
               'method': 'getJ',
               'data': data
           }),
           headers: {'Content-Type': 'application/json; charset=utf=8'}
       }/*this is data end*/);