android - 如何将数据传递到wordpress网站

标签 android wordpress

我正在为 word press 网站制作一个 android 应用程序。我快完成了。我只是被困在一件小事上。这是我想在应用程序中创建的特定网站页面的链接:http://abinet.org/contact-us/ .用户应填写必填字段并单击提交,消息必须转到网站管理员(与在网站中发生的方式相同)。

我可以制作 xml 布局、获取文本等等,但不知道要在“提交”按钮中编写什么代码。我无法在谷歌上搜索这个,因为我不确定到底要搜索什么。我不知道这叫什么。我不想编码。我只想知道我需要阅读哪些主题才能实现这一目标。任何开始都会有所帮助。

最佳答案

您想从您的 Android 应用程序 POST 数据到 WPCF7 表单。

您可以在 SO 甚至网络上搜索此内容,但这里有一些快速提示:

  1. 您不能只是那样发布数据,因为 wordpress contact form 7 具有针对垃圾邮件的保护措施(参见:CSRF)。
  2. 如果使用 wordpress-json-api,您可以添加一个获取 POST 数据并将其安全提交到 WPCF7 的函数,并将此函数映射到 json-api 调用

考虑一个更持久的解决方案:仅对于联系表格,您可以使用 WebView加载http://abinet.org/contact-us/并注入(inject)自定义 CSS 来改变外观。 因此,万一网站需要添加更多字段,它可以在不破坏您的应用的情况下完成。

如果这看起来太复杂,您可以制作自己的自定义布局并将提交按钮绑定(bind)到一个任务:从网站获取隐藏字段并在发布时包含它们。

更新:

网络任务和所有其他与 IO 相关的任务不应该也不能(取决于操作系统版本)在主 UI 线程中完成。要执行这些操作,要么创建并运行一个新线程,要么——以更 Android 的方式——在后台执行一个异步任务。要在“联系表单 Activity ”中使用 AsyncTask:

  • 编写一个扩展AsyncTask的内部类
  • 在您的 Activity 的 onClick(View v) 方法中实例化并执行它(一个很好的示例,请参见 how to asynchronously download a webpage)
  • 下载后,您需要 DOM 解析器从空白表单中获取隐藏字段,并将它们包含在联系表单的 POST 提交中。

这可能不是您问题的详细解决方案,但您的问题“很复杂”;)您现在应该知道如何在 Android 中执行与网络相关的任务(如何对通用站点执行 HTTP POST 请求)以及如何获取表单 CSRF token 和其他隐藏字段(将所有 Web 表单都视为具有它们)。如果您在任何这些问题上需要帮助,请提出另一个问题。

关于android - 如何将数据传递到wordpress网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24266929/

相关文章:

php - 在 Woocommerce REST API 中按类别获取产品

java - 使用文件提供程序将相机照片从 fragment 保存到图库

html - 粗体文本链接的不同边框底部

php - 多个 MySQL 查询集中在一个中,同时忽略重复的匹配 ID

javascript - Wordpress 的图像悬停效果

php - Woocommerce 中的欧洲 GDPR 附加结帐验证复选框

android - 在谷歌地图 V2 上添加按钮

java - 用于将字符序列转换为字符串的流的替代方案

android - 为什么我的 android studio 在安装(运行)后没有自动启动应用程序

Android 开发者控制台堆栈跟踪