为了账号安全,请及时绑定邮箱和手机立即绑定

Ajax 请求发送 CURL 请求

Ajax 请求发送 CURL 请求

PHP
POPMUISE 2022-06-17 14:19:29
我正在通过 Ajax 从 from 提交数据,它需要向端点发出 curl 请求。我没有收到任何错误,但是当我检查端点中的数据时,它不存在。如果我只使用普通的 html 提交表单,那么它就可以工作。所以,我想象的我的 CURL 代码有问题。<?php  $response = [];  $message = '';   $data = [        'first_name'      => $_POST['first_name'],        'last_name'       => $_POST['last_name'],        'email'           => $_POST['email'],];$options = [    CURLOPT_URL        => 'https://someEndpoint.com?encoding=UTF-8',    CURLOPT_POST       => true,    CURLOPT_POSTFIELDS => $data,    CURLOPT_RETURNTRANSFER => 1];$curl = curl_init();curl_setopt_array($curl, $options);$results = curl_exec($curl);curl_close($curl);$response['success'] = true;$response['message'] = 'Thank you, your request has been submitted.';echo json_encode($response);
查看完整描述

1 回答

?
DIEA

TA贡献1820条经验 获得超2个赞

您当前将 post 字段作为数组传递。但是,cURL 期望它以这种格式作为字符串传递:

first_name=foo&last_name=bar&...

它就像一个查询字符串。

我们可以使用http_build_query()将数组转换为上述格式:

CURLOPT_POSTFIELDS => http_build_query($data),


查看完整回答
反对 回复 2022-06-17
  • 1 回答
  • 0 关注
  • 221 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信