如何发送带有空格的 POST 请求?

use*_*557 3 php java post android

我正在尝试将输入从 edittext 发送到 PHP。如果我发送的东西没有空格,它可以正常工作,但会因空格而崩溃并说:

非法字符

...指的是空间。

显然,这是使引号正确的问题,但由于某种原因,我无法做到这一点。

我在哪里添加引号?

在创建 URL 期间是在 Java 中吗?

http://example.com/android/project_group_notes_details.php?course=\'"+sessionCourse+"\'";
Run Code Online (Sandbox Code Playgroud)

还是在创建变量时?

String sessionCouse = "\'Software Development With Spaces\'";
Run Code Online (Sandbox Code Playgroud)

还是以某种方式在服务器端完成?

ASt*_*her 5

标准浏览器将输入到地址栏中的任何空格替换为%20; HTML 的space字符。

HTTP 不会这样做,浏览器会这样做,这意味着您有两个选择:

  1. 创建一个函数来接收一个字符串并将所有空格替换为%20;
  2. 手动替换空格 %20

例如:

String sessionCouse = "\'Software Development With Spaces\'";
Run Code Online (Sandbox Code Playgroud)

实际上应该是

String sessionCouse = "\'Software%20Development%20With%20Spaces\'";
Run Code Online (Sandbox Code Playgroud)