【发布时间】:2019-01-11 20:37:18
【问题描述】:
我的申请有问题。我以角度创建应用程序并用科尔多瓦包装。在android模拟器中请求url是好的,但是当我复制文件并在我的手机中测试时,url是错误的。
我的要求:http://111.111.11.111/myReq - 好
在我的手机上,在 Cordova 构建之后:file:///android_asset/www/null/login -bad
这是我的错误:
POST file:///android_asset/www/null/login net::ERR_FILE_NOT_FOUND
我尝试解决方案:
-
ng build --prod和cordova build --prod - 将文件和目录重命名为小写
- 添加行:preference name="loadUrlTimeoutValue" value="60000" 或 70000 到 config.xml
这是我的要求:
userLogin(login: string, password: string): Observable<any> {
const baseUrl = 'http://111.111.11.111/myReq'
const httpOptions = {
headers: new HttpHeaders({
'Content-Type': 'application/json',
'Authorization': 'myToken',
})
};
return this.http.post<any>(`${baseUrl}/login`, JSON.stringify({login, password}), httpOptions);
}
没有任何效果。我该如何解决?
【问题讨论】:
-
你能发布你用来发出请求的js/ts代码吗?
-
@SergioRinaudo 我在上面添加的请求
-
看起来由于某种原因没有评估模板变量,您是否尝试将 url 值作为普通字符串? return this.http.post
('111.111.11.111/myReq/login', JSON.stringify({login, password}), httpOptions); -
@SergioRinaudo 你是对的!当我把正常的字符串一切工作。那么如何放置baseUrl?该值来自登录表单输入
标签: javascript android angular api cordova