PHP调用百度api生成短网址&根据短网址恢复长网址
- 接口api文档地址:http://dwz.cn/#/apidoc?_k=i9ev5p
- 代码demo
header("Content-type: text/html; charset=utf-8");
/**
* 生成短网址
*/
//短网址生成接口地址&传递的参数
$url = "http://dwz.cn/admin/create";
$param = [
"url"=>"http://www.baidu.com",
]; //curl初始化&curl配置
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //执行cURL会话
$ret = curl_exec($ch);
//获取cURL连接资源句柄的信息
$retInfo = curl_getinfo($ch); if($retInfo['http_code'] == 200){
$data = json_decode($ret, true);
/**
* Code:0:正常返回短网址,-1:短网址生成失败,-2:长网址不合法,-3:长网址存在安全隐患,-4:长网址插入数据库失败,-5:长网址在黑名单中,不允许注册;
* ShortUrl:短网址
* LongUrl:长网址(原网址)
* ErrMsg:错误信息
*/
if($data['Code'] != 0){
echo '短网址生成失败,错误原因为:' . $data['ErrMsg'];
}else{
echo '短网址生成成功!由['.$data['LongUrl'].']生成的短网址为:['.$data['ShortUrl'].']';
}
}else{
echo 'make short url failed';
} echo "<hr>";
/**
* 短网址还原
*/
//短网址还原接口地址&传递的参数
$url = "http://dwz.cn/admin/query";
$param = [
"shortUrl"=>"http://dwz.cn/de3rp2Fl",
]; //curl初始化&curl配置
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($param));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //执行cURL会话
$ret = curl_exec($ch);
//获取cURL连接资源句柄的信息
$retInfo = curl_getinfo($ch); if($retInfo['http_code'] == 200){
$data = json_decode($ret, true);
/**
* Code:0:正常返回短网址,-1:短网址对应的长网址不合法,-2:短网址不存在,-3:查询的短网址不合法;
* ShortUrl:短网址
* LongUrl:长网址(原网址)
* ErrMsg:错误信息
*/
if($data['Code'] != 0){
echo '短网址恢复失败,错误原因为:' . $data['ErrMsg'];
}else{
echo '短网址恢复成功!由['.$data['ShortUrl'].']恢复的短网址为:['.$data['LongUrl'].']';
}
}else{
echo 'make short url failed';
} 还可以使用ajax调用接口获取短链接

PHP调用百度api生成短网址&根据短网址恢复长网址的更多相关文章
- 调用百度API进行文本纠错
毕设做的是文本纠错方面,然后今天进组见研究生导师 .老师对我做的东西蛮感兴趣.然后介绍自己现在做的一些项目,其中有个模块需要有用到文本纠错功能. 要求1:有多人同时在线编辑文档,然后文档功能有类似Wo ...
- 调用百度API返回经纬度
后台调用百度API接口生成: import java.io.BufferedReader; import java.io.IOException;import java.io.InputStreamR ...
- 前端调用百度API
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- Vue 通过调用百度API获取地理位置-经度纬度省份城市
一.首先在百度api注册获得ak密钥 二.新建js文件,我命名为loadBMap.js,里面创建script,代码如下: /** * 加载地图 * @param {Function} callback ...
- 调用百度API将地名转为经纬度
最近做一道数据科学竞赛题,特征中有城市名和地名,需要转为经纬度来使用 故用python写了一个地名转经纬度的脚本,调用了百度地图的API,key在百度地图开放平台上申请 申请key的地方:http:/ ...
- 怎样在自己的网页中调用百度API
https://blog.csdn.net/u010251278/article/details/52877370 以下内容转自上述网站,为了以后的学习方便,为此才特地将该网站内容转到自己的博客,多谢 ...
- 调用百度API写了一个js翻译小工具
目前还未完成的功能有:textarea高度自适应,移动端与pc端都写了.效果如图: html: <!DOCTYPE html> <html lang="en"&g ...
- 用jQuery调用微信api生成二维码
其实这个,也没什么实际用途,只能测试一下api能不能用. 1. 用Chrome打开一个https://api.weixin.qq.com/页面,会返回一个错误信息,忽略不管,F12打开控制台 2. 控 ...
- java程序:调用百度api进行情感分析
源码: package com.jeson.ceshi; import java.util.HashMap; import org.json.JSONObject; import com.baidu. ...
随机推荐
- ubuntu设置root
第一步:首先sudo passwd root 设置root密码第二步:#vim /etc/ssh/sshd_config#PermitRootLogin without-password #找到 ...
- 再编写代码中报错:CS8107 C# 7.0 中不支持功能“xxxxxx”。请使用 7.1 或更高的语言版本。
解决方法:项目右键属性 ---> 生成 ---> 找到最下面的高级按钮,点击高级按钮 ---> 常规 ---> 语言版本 ---> 选择 C#最新次要版本,或者比当前版本 ...
- Python----初次见面,请多关照!
1.计算机的最基本认识 CPU(大脑) 3GHZ + 内存(DDR4) + 主板 + 电源(心脏)+ 显示器 + 键盘 +鼠标+ 显卡 + 硬盘 80MB/s 操作系统分为: windows 家用 l ...
- 和我一起学python
近来python越来越火,很多人都出了教程,我也来出一个凑凑热闹吧. pycharm激活 http://idea.lanyus.com/ https://blog.csdn.net/u01404481 ...
- GO学习笔记 - 函数名前面是否有输入参数肯定是不一样的!!
在刚接触GO语言时候,我相信你也会有这种困惑,为什么有的函数名前面有输入参数,而一些却没有,它们是否有差别?确实有差别,没有输入参数,是一般的函数:有输入参数,是结构的方法,输入参数叫做“方法接收者” ...
- 62 不同路径 leetcode JAVA
题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” ). 机器人每次只能向下或者向右移动一步.机器人试图达到网格的右下角(在下图中标记为“Finish”). 问 ...
- 「雅礼集训 2018 Day10」贪玩蓝月
题目链接 题意分析 我们考虑维护两个栈 分别支持左边的插入删除以及右边的插入删除 然后对于两两个栈的我们需要用背包求出最优答案 注意 删除时如果不够的话 我们需要从另一个栈中取出一半加入另一个栈中 注 ...
- 简单创建一个完整的struts2框架小程序
要完成一个struts2框架的搭建, 1.首先应该从官网上下载最新的jar包,网络连接:http://struts.apache.org/download.cgi#struts2514.1,选择下载F ...
- 初学struts2框架
昨天初学strts2,折腾了一晚上才正好一个简单的应用程序,在这个过程中遇到了很多的问题. 1. struts2的更新太快,所以从图书馆借的书常常会跟不上变化,所以有时执行起来会很麻烦. 2. 如果你 ...
- 启动多个appium服务(同时运行多台设备)
准备: 一台真机一台模拟器(使用的是“夜神模拟器”) 先查看是否检测到设备 adb devices 由上图可看出没有检测到模拟器(夜神模拟器已开启) 可通过以下配置完成: 第一步:找到adb的 ...