java - 如何在没有 FORM POST 操作键的情况下编写项目数组的 HTML BODY 字符串?

标签 java android html arrays post

我有这个规范:

FirstName = "Steve"
LastName = "Jobs"
 PhoneNumber = "3334445555"
 PhoneNumber = "4445556666"
 PhoneNumber = "7778889999"

我需要从用 Java 编写的 Android 应用程序 POST 到服务器。

问题是数组没有名称(即没有键)。可以有无限数量的项目(即电话号码)。

我的客户希望我将其作为 HTML 表单 POST 发送。我可以构造一个像这样的 BODY 字符串 "firstname=Steve&lastname=Jobs&...如何将电话号码放在这里?"

如何发布数组?

此外,我的客户说服务器端 API 连接(接收表单帖子)尚未开发。

我想知道如何构造POST正文字符串(以及如何建议我的客户端对服务器端进行编程以接收它)。

注意:我的客户不需要 JSON 形式。

听起来这是我的客户提出的一个奇怪的要求,有什么创意建议吗?

最佳答案

索引

您可以在参数 phone1phone2、... 中添加索引
服务器需要检查这些是否存在。它可能需要捕获异常,但这没问题。

解决此问题的另一种方法是添加 phoneCount 参数,这样您就知道要恢复多少个电话号码。

“firstname=Steve&lastname=Jobs&phoneCount=2&phone1=3334445555&phone2=4445556666

在服务器端,你只需要做一些类似的事情

int phoneCount = param.getInt("phoneCount");
String[] phones = new String[i];
for(int i = 0; < i phoneCount; i++){
     phones[i] = param.getString("phone" + i);
}

注意:这不是一个工作代码,这不使用任何“已知”库,这只是一个使用逻辑。

连接

您还可以连接每个电话号码,例如 3334445555|4445556666
在服务器端,您只需拆分该值即可获取电话号码数组。

String[] phones = param.getString("phones").split("|");

关于java - 如何在没有 FORM POST 操作键的情况下编写项目数组的 HTML BODY 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56928336/

相关文章:

javascript - 用javascript中的随机词替换段落标签内容

java - 环绕网格 - 仅东/西错误

java - 如何在显示下一个 View 之前清除 RootPanel

java - 密码如何以加密格式存储在数据库中?

php - 如何使用 PHP 设置新​​的 Google Cloud Messaging API 服务器实现和托管?

android - ConstraintLayout 与偏移对齐

javascript - 成功登录后在同一窗口中打开 target.html 页面

html - 基于表格的布局中 div 右对齐的问题

javax.naming.NameNotFoundException : Name "ilog.rules.res.session.impl.ejb3.IlrStatelessSessionLocal" not found in context "ejblocal:"

java - 如何从 HTML/JS 和 android 调用 Java 服务器端方法?