php post application/json
时间: 2023-07-29 14:09:38 浏览: 145
在 PHP 中进行 POST 请求并发送 JSON 数据,可以使用 `curl` 库。
```php
$url = "http://example.com/api";
$data = array('username' => 'john', 'password' => 'doe');
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($data));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json',
'Content-Length: ' . strlen(json_encode($data)))
);
$response = curl_exec($ch);
curl_close($ch);
// 处理响应
```
这里需要注意的是,需要在请求头中设置 `Content-Type` 为 `application/json`,并且发送的数据需要进行 JSON 编码。
相关问题
php post 请求 Content-Type: application/json;charset=utf8
在 PHP 中发送一个 POST 请求并设置 Content-Type 为 application/json;charset=utf8,可以使用以下代码示例:
```php
$url = 'http://example.com/api';
$data = array('key1' => 'value1', 'key2' => 'value2');
$options = array(
'http' => array(
'header' => "Content-type: application/json;charset=utf8\r\n",
'method' => 'POST',
'content' => json_encode($data),
),
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
$response = json_decode($result);
```
这里使用了 `file_get_contents` 函数来发送请求,并通过 `$options` 参数设置了请求头和 POST 数据。`json_encode` 函数用于将数组转换为 JSON 格式的字符串。最后,使用 `json_decode` 函数将返回的 JSON 字符串解码为 PHP 对象或数组。
<IfModule mod_deflate.c> DeflateCompressionLevel 6 SetOutputFilter DEFLATE AddOutputFilterByType DEFLATE text/html text/plain text/xml text/csstext/javascript application/x-javascript application/javascript application/json SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary AddOutputFilterByType DEFLATE text/* AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp </IfModule>
这段代码是用来进行网页压缩的,它使用了 Apache 的 mod_deflate 模块。通过压缩网页内容,可以减少网页传输的数据量,从而提高网页的加载速度。其中,DeflateCompressionLevel 控制压缩级别,SetOutputFilter 和 AddOutputFilterByType 用来指定压缩的对象类型,SetEnvIfNoCase 用来指定不压缩的对象类型。
阅读全文