php - 如何使用php中的api将数据粘贴到pastebin?

标签 php curl http-post pastebin

<?php 

/* gets the data from a URL */ 
function get_data($url) 

{ 

  $ch = curl_init();

  $timeout = 5;

  curl_setopt($ch,CURLOPT_URL,$url);

  curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);

  curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);

  $data = curl_exec($ch);

  curl_close($ch);
  return $data;

}
$paste_data=""; if(isset($_POST["paste_code"])) { $paste_data = $_POST["paste_code"]; }
echo $paste_data;
$returned_content = get_data('http://pastebin.com/api_public.php/paste_code(paste_data)');
echo $returned_content;
?>

这是我的 php 代码。其中 $paste_data 包含要粘贴到新页面中的数据。如何使用函数paste_code(String)粘贴它?

最佳答案

documentation表示您需要向

提交 POST 请求
http://pastebin.com/api_public.php

唯一的强制参数是paste_code,字符串类型是您要制作的粘贴。

成功后,将返回新的 pastebin URL。

基本示例:

$ch = curl_init("http://pastebin.com/api_public.php");
curl_setopt ($ch, CURLOPT_POST, true);

// A new paste with the string "hello there SO"
curl_setopt ($ch, CURLOPT_POSTFIELDS, "paste_code=hello there SO");

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_VERBOSE, 1);
curl_setopt($ch, CURLOPT_NOBODY, 0);

$response = curl_exec($ch);

echo $response; 

运行时我得到:

> POST http://pastebin.com/api_public.php HTTP/1.1
Host: pastebin.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 25
Content-Type: application/x-www-form-urlencoded

< HTTP/1.1 200 OK
< Transfer-Encoding: chunked
< Date: Mon, 13 Dec 2010 07:51:12 GMT
< Content-Type: text/plain
< Server: nginx/0.8.52
< Vary: Accept-Encoding
< X-Powered-By: PHP/5.3.4-dev
< Via: 1.1 apac-nc06 (NetCache NetApp/6.0.6)
< 
http://pastebin.com/Lc7kAw8Z* Closing connection #0

显然响应的 URL 为 http://pastebin.com/Lc7kAw8Z

访问它,您将看到一个新的粘贴,其中包含hello there SO

关于php - 如何使用php中的api将数据粘贴到pastebin?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4426648/

相关文章:

php - 不可能在变量中返回简单函数

php - 给信的随机词

php - 如何在 PHP 后台运行 cURL 请求?

javascript - 使用 curl -X PUT 测试 REST 路由,返回 404

c++ - QT5 的 POST 请求

javascript - Chrome 扩展程序背景和内容脚本发布消息

php - mysql_num_rows 错误,但数据库已更新

php - 使用 EasyApns 添加推送通知

php - OpenSSL SSL_read : SSL_ERROR_SYSCALL, 错误号 104

Android HTTP post 不发送 post 值