在搭建三合一收款码时遇到缩短网址api调用问题,接口要求使用post来访问Api。 查找了一些资料,可以实现获取短网址。 接口定义:https://url.jishusongshu.com/help.php 获取短网址的代码如下:
<?php $url_long='https://www.jishusongshu.com/wordpress-site/block-foreign-network-attacks/';//此处为待缩短的网址 $api = "https://url.jishusongshu.com/api.php"; // 短网址接口 $data = array('url'=>$url_long); //定义参数 $data = @http_build_query($data); //把参数转换成URL数据 $aContext = array('http' => array('method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => $data )); $cxContext = stream_context_create($aContext); $res = json_decode(file_get_contents($api,false,$cxContext), true); if($res["code"] == 200) { // 生成成功时接口返回状态值和状态码 $tinyurl = $res["shorturl"]; // 短网址所在的路径 } else { $tinyurl = $url_long; // 生成失败则默认使用原来的长网址 } echo $tinyurl; ?>
测试输出:https://url.jishusongshu.com/KBuBjXqT