SwiftUI HTTP POST mysql

SwiftUI Http POST mysql

我正在使用 SwiftUI 构建一个 CRUD 应用程序。从 mysql 数据库读取正在运行。但是当我尝试创建记录时,我在数据库中得到了一条空记录。如果我打印出 Xcode 中的参数,我将发送到数据库,我会看到这个结果:["title": "Test 4", "post": "This is test 4"]。在我的 php 脚本中,我使用此 POST 代码:

$title    = $_POST['title'];
$post    = $_POST['post'];

在 Xcode 中,我使用此代码从文本字段中获取值:

let parameters: [String: Any] = ["title": title, "post": post]

并且此代码用于 Http POST:

 let data = try! JSONSerialization.data(withJSONObject: parameters)
 var request = URLRequest(url: url)
 request.httpMethod = "POST"
 request.httpBody = data
 request.setValue("application/json", forHTTPHeaderField: "Content-Type")

我可以为 swift 找到关于此的信息并构建一个应用程序,但它在 SwiftUI 中不起作用。

看起来您正在发送 JSON 但在 PHP 端需要表单参数。您需要更改 PHP 以从正文中获取 json 并解析它。下面是一个非常基本的例子:

$json = json_decode(file_get_contents('php://input'));

$title = $json->title;
$post = $json->post;