2017-08-09 51 views
0

我有一个可以发布的服务。该服务在另一台机器上托管。当我试图使用邮差后,它工作正常。现在,当我试图使用在另一台机器上运行的Angular2应用程序发布信息时,出现错误:“状态响应:URL为null:0”。在我的角度服务代码如下:状态响应:0代表URL:null

postQuestions() { 
    var json = JSON.stringify({ 
     "TestInfo_FK" : "612", 
     "Resource_FK" : 0, 
     "QuestionNo" : 22, 
     "ContentType" : "HTML", 
     "Content"  : "This is the question from Jason", 
     "NoOptions" : 4, 
     "OptionLayout" : "Vertical", 
     "Answer"  : "A" 
    }); 


    var url = 'http://my.service.net/api/ONLINE/Question'; 
    var params = 'json=' + json; 
    var headers = new Headers(); 
    headers.append('Content-Type', 'application/json'); 
    headers.append('Access-Control-Allow-Origin', '*'); 

    return this._http.post(url, params, { 
     headers: headers 
    }) 
    .map(res => res.json()); 
} 

如何解决这个问题?

回答

0

当您的托管服务无法通过跨源(CORS)访问时,就会出现这种情况。因此,如果您正在访问Spring Rest服务,请在服务上使用@CrossOrigin注释。 或使用 烧瓶的RESTful建立远程API

从flask_restful.utils导入CORS 从flask_restful进口阿比

API = API(应用程序,装饰= [cors.crossdomain(原点= '*')] )