Android Java : 在 Webview 上提交表单 (post) 时出错
Android Java : Error when submit form(post) on Webview
我想在 webview 中加载此页面,https://pkfieur.gares.io/pk2geo/,以及 "Ligne" 和 "PK" 中的过去数据,然后单击 "Rechercher"。
过去的数据不是问题,但是提交是。
这里是html:
<form id="form-id" method="post">
<div id="the_post">...</div>
<input type="submit" value="Rechercher">
</form>
代码:
web.getSettings().setJavaScriptEnabled(true);
web.getSettings().setDomStorageEnabled(true);
web.loadUrl("https://pkfieur.gares.io/pk2geo/");
go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
web.loadUrl("javascript: document.getElementById('id_ligne').value ='" + ligne.getText() + "';"
+ "document.getElementById('id_pk').value ='" + pk.getText() + "';"
+ "document.getElementById('form-id').submit();");
}
});
当我的编辑文本准备就绪后,我点击了我的按钮 GO(在我的应用程序中),webview 告诉我:
image
谁能帮帮我,我知道这可能是 cookie 或调试问题,但我尝试了很多都没有找到解决方案。
编辑:当我们快速研究时,我们有一个纬度和经度:我只想获取这些数据,为此我使用 Webiew,(不是自定义标签,因为它将打开一个新选项卡..)并且在我将 WebView 可见性设置为 false 之后!
如果你有更好的解决方案,比如 http 或其他,我不知道..:/
太棒了!
关于来自 TS 的编辑,TS 应该为此使用 API,然后使用 Retrofit 或其他东西来调用 API。
https://square.github.io/retrofit/
Edit2:我从网站上提取了电话。在您的 Retrofit 实例或 API 调用适配器中使用此端点以调用 API。在下面查找请求方法和 API 端点。
Request Method: GET
Request URL: https://pkfieur.gares.io/data_pk2geo/?ligne=XXXX&pk=XXXX
其中 XXXX 是查询字符串(您通常会在网站的字段中键入),您应该在调用 API 时更改这些字符串。
我想在 webview 中加载此页面,https://pkfieur.gares.io/pk2geo/,以及 "Ligne" 和 "PK" 中的过去数据,然后单击 "Rechercher"。
过去的数据不是问题,但是提交是。
这里是html:
<form id="form-id" method="post">
<div id="the_post">...</div>
<input type="submit" value="Rechercher">
</form>
代码:
web.getSettings().setJavaScriptEnabled(true);
web.getSettings().setDomStorageEnabled(true);
web.loadUrl("https://pkfieur.gares.io/pk2geo/");
go.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
web.loadUrl("javascript: document.getElementById('id_ligne').value ='" + ligne.getText() + "';"
+ "document.getElementById('id_pk').value ='" + pk.getText() + "';"
+ "document.getElementById('form-id').submit();");
}
});
当我的编辑文本准备就绪后,我点击了我的按钮 GO(在我的应用程序中),webview 告诉我:
image
谁能帮帮我,我知道这可能是 cookie 或调试问题,但我尝试了很多都没有找到解决方案。
编辑:当我们快速研究时,我们有一个纬度和经度:我只想获取这些数据,为此我使用 Webiew,(不是自定义标签,因为它将打开一个新选项卡..)并且在我将 WebView 可见性设置为 false 之后!
如果你有更好的解决方案,比如 http 或其他,我不知道..:/
太棒了!
关于来自 TS 的编辑,TS 应该为此使用 API,然后使用 Retrofit 或其他东西来调用 API。
https://square.github.io/retrofit/
Edit2:我从网站上提取了电话。在您的 Retrofit 实例或 API 调用适配器中使用此端点以调用 API。在下面查找请求方法和 API 端点。
Request Method: GET
Request URL: https://pkfieur.gares.io/data_pk2geo/?ligne=XXXX&pk=XXXX
其中 XXXX 是查询字符串(您通常会在网站的字段中键入),您应该在调用 API 时更改这些字符串。