前言
简单记录一下JavaScript和PHP中,使用post方法发送请求到后端并处理响应。
偶尔需要用,简单记录一下,方便自己查阅。
主要摘抄,只是参考思路,具体还是结合自己代码使用
正文
通常涉及以下步骤:
后端处理请求并返回数据
在前端,使用回调函数处理后端返回的数据
前端1
PHP
<?php
$data = array(
'foo'=>'bar',
'baz'=>'boom',
'site'=>'localhost',
'name'=>'nowa magic');
$data = http_build_query($data);
//$postdata = http_build_query($data);
$options = array(
'http' => array(
'method' => 'POST',
'header' => 'Content-type:application/x-www-form-urlencoded',
'content' => $data
//'timeout' => 60 * 60 // 超时时间(单位:s)
)
);
$url = "https://www.biumall.com/test2.php";
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
echo $result;
?>
JavaScript
<script>
$(document).ready(function(){
$("#myButton").click(function(){
// 发送数据到后端
$.post("https://www.biumall.com/test2.php", { key1: "value1", key2: "value2" }, function(data, status){
// 处理后端响应
console.log("Data: " + data + "\nStatus: " + status);
// 更新前端内容或者进行其他操作
$("#myDiv").html(data);
});
});
});
</script>
后端
test2.php
<?php
// 确保只有通过POST请求才能访问此脚本
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
//传输的数据
$postData = $_POST;
// 处理$postData,例如将其存储到数据库或进行其他操作
// ...
// 准备返回的数据数组
$response = array(
'status' => 'success',
'message' => '数据已处理',
// 根据实际需求添加更多的数据
);
// 将数组转换为JSON格式
$jsonResponse = json_encode($response);
// 输出JSON格式的响应
header('Content-Type: application/json');
echo $jsonResponse;
} else {
// 如果不是POST请求,可以给出错误提示或其他响应
http_response_code(405); // 设置HTTP状态码为405 Method Not Allowed
echo '错误:请使用POST方法请求。';
}
?>
参考文章
《》
《》
《
© 版权声明