2017-04-11 68 views
0

我想用我的ReactJS应用程序使用登录REST API的Alfresco CE 5.1.e登录,但我有控制台中的下一个错误我的浏览器:验证JSON解析错误与ReactJS使用Alfresco 5.1.e CE登录REST API

语法错误JSON解析数据意外结束第1行的JSON数据

这个错误不露天CE 4.2.e发生的1列,我有一个应用程序与React Native和登录它与4.2.e和5.1.e.一起使用。 我已经在Alfresco中配置了CORS。我想至极的问题是ReactJS,我用下面的代码:

API-client.js

function loginAlfresco(user, pass) 
{ 
    return fetch(alfrescoLocal + "api/login", 
    { 
     method: 'post', 
     dataType: 'json', 
     body: JSON.stringify(
     { 
      username: user, 
      password: pass 
     }) 
    }) 
    .then((res) => res.json()) 
    .then(data => alert(data)) 
    .catch(error => alert("Error" + error)) 
}; 

Login.js

loginAlfresco() { 
    loginAlfresco(this.state.username, this.state.password) 
     .then((data) => 
      this.setState({ticket: data}) 
     ).catch((error) => 
      alert(error) 
     ) 
}; 

的JSON发出的是:

{ 
    "username":"user", 
    "password":"12345" 
} 

在铬的控制台的响应是:

Solicitud desde OTRO的origen bloqueada:LApolítica德MISMO奥利 impide阅读EL RECURSO偏远落后地区烯 http://EXTERNAL-IP:8082/alfresco/s/api/login(拉松:法尔塔LA cabecera CORS的访问控制允许-起源')。

而网络浏览器:

Request URL: http://EXTERNAL-IP:8082/alfresco/s/api/login 
Request Method: POST 
Status Code: 200 OK 
Remote Address: localhost:8082 

任何想法?

+1

发布您尝试解析的数据的副本。 –

+0

谢谢,我添加了它... – Arak

+0

你可以使用浏览器开发工具来查看到底发送和接收的内容吗? – Gagravarr

回答

1

问题出在Alfresco CORS配置中,我将位于“tomcat/webapps/alfresco/WEB-INF/lib”文件夹中的“cors-filter-1.9.3.jar”库更改为更新的版本“ cors-filter-2.4.jar“,解决了。