在线调试
填写业务相关参数免费在线调试
这是超级APIkey.Net项目,平台老接口地址:https://apikey.net/api/old/
接口地址:https://apikey.net/api/old/index
返回格式:application/json
请求方式:HTTPGET/POST
请求示例:https://apikey.net/api/old/
名称 | 值 |
---|---|
Content-Type | application/x-www-form-urlencoded;charset:utf-8; |
名称 | 必填 | 类型 | 示例值 | 说明 |
---|---|---|---|---|
key | 是 | string | ehFayFSEyjDrxTFHaSxrDFkCtnjbts5D | 接口密钥,在控制台->密钥管理查看 |
ip | 否 | string | https://apikey.net/api/old/index?ip=baidu.com | (请求该接口参数,会返回域名baidu.com解析的服务器IP地址、IP地址归属地等信息) |
ip | 否 | string | https://apikey.net/api/old/index?ip=5.76.86.56 | (请求该接口参数,会返回IP地址5.76.86.56的IP地址归属地等信息) |
ip | 否 | string | https://apikey.net/api/old/index?ip=88888888 | (请求该接口参数,会返回数字IP地址88888888的IP地址及IP地址归属地等信息) |
saying | 否 | string | https://apikey.net/api/old/index?type=saying | (请求该接口参数,会返回一句随机的文字[谚语、诗句、歌词、一句话散文、每日一句、经典名句、优美词句等]) |
ipAddress | 否 | string | https://apikey.net/api/old/index?type=ipAddress | (请求该接口参数,会返回用户的IP地址) |
ipNumber | 否 | string | https://apikey.net/api/old/index?type=ipNumber | (请求该接口参数,会返回用户的IP地址的数字IP地址) |
ipAttribution | 否 | string | https://apikey.net/api/old/index?type=ipAttribution | (请求该接口参数,会返回用户的IP地址的归属地) |
ipProxyAddress | 否 | string | https://apikey.net/api/old/index?type=ipProxyAddress | (请求该接口参数,会返回用户的代理IP地址) |
ipProxyNumber | 否 | string | https://apikey.net/api/old/index?type=ipProxyNumber | (请求该接口参数,会返回用户的代理IP地址的数字地址) |
ipProxyAttribution | 否 | string | https://apikey.net/api/old/index?type=ipProxyAttribution | (请求该接口参数,会返回用户的代理IP地址的归属地) |
bgImg | 否 | string | https://apikey.net/api/old/index?type=bgImg | (请求该接口参数,会返回一个网络上随机的高清合法背景图片[风景图、摄影图、合法的美女图、合法的写真图、世界景观图等]) |
bgAudio | 否 | string | https://apikey.net/api/old/index?type=bgAudio | (请求该接口参数,会返回一个网络上随机的合法背景声音[摇滚、经典歌曲、经典音乐、背景音乐等]) |
bgMP4 | 否 | string | https://apikey.net/api/old/index?type=bgMP4 | (请求该接口参数,会返回一个网络上随机的合法视频[经典电影片段、经典电视剧片段、经典电影解说片段、经典视频片段等]) |
bjTime | 否 | string | https://apikey.net/api/old/index?type=bjTime | (请求该接口参数,会返回当前的北京时间[人性化表示]) |
timestamp | 否 | string | https://apikey.net/api/old/index?type=timestamp | (请求该接口参数,会返回当前北京时间的时间戳[计算机存储用]) |
week | 否 | string | https://apikey.net/api/old/index?type=week | (请求该接口参数,会返回当前北京时间的星期几) |
timeHour | 否 | string | https://apikey.net/api/old/index?type=timeHour | (请求该接口参数,会返回当前北京时间的小时[24小时制的小时]) |
currenThour | 否 | string | https://apikey.net/api/old/index?type=currenThour | (请求该接口参数,会返回当前北京时间的小时[人性化显示的小时]) |
goodTime | 否 | string | https://apikey.net/api/old/index?type=goodTime | (请求该接口参数,会返回当前北京时间的问候语[人性化的问候语]) |
currentDate | 否 | string | https://apikey.net/api/old/index?type=currentDate | (请求该接口参数,会返回当前北京时间的日期[纯数字显示]) |
currentdate | 否 | string | https://apikey.net/api/old/index?type=currentdate | (请求该接口参数,会返回当前北京时间的日期[纯数字,网页代码中常用的]) |
CurrentDate | 否 | string | https://apikey.net/api/old/index?type=CurrentDate | (请求该接口参数,会返回当前北京时间的日期[人性化显示]) |
dayTime | 否 | string | https://apikey.net/api/old/index?type=dayTime | (请求该接口参数,会返回当前北京时间的日期[纯数字显示]) |
hourTime | 否 | string | https://apikey.net/api/old/index?type=hourTime | (请求该接口参数,会返回当前北京时间的日期及时间[纯数字显示]) |
minuteTime | 否 | string | https://apikey.net/api/old/index?type=minuteTime | (请求该接口参数,会返回当前北京时间的日期及时间与分钟[纯数字显示]) |
secondTime | 否 | string | https://apikey.net/api/old/index?type=secondTime | (请求该接口参数,会返回当前北京时间的日期时间及分钟与秒[纯数字显示]) |
CurrentTime | 否 | string | https://apikey.net/api/old/index?type=CurrentTime | (请求该接口参数,会返回当前北京时间的日期时间及分钟与秒[人性化显示]) |
currentTime | 否 | string | https://apikey.net/api/old/index?type=currentTime | (请求该接口参数,会返回当前北京时间的日期[纯数字,网页代码中常用的]) |
md5LowTimestamp | 否 | string | https://apikey.net/api/old/index?type=md5LowTimestamp | (请求该接口参数,会返回当前北京时间时间戳的32位MD5小写加密) |
md5Timestamp | 否 | string | https://apikey.net/api/old/index?type=md5Timestamp | (请求该接口参数,会返回当前北京时间时间戳的32位MD5大写加密) |
md5CurrentDate | 否 | string | https://apikey.net/api/old/index?type=md5CurrentDate | (请求该接口参数,会返回当前北京时间日期的32位MD5大写加密) |
md5CurrentTime | 否 | string | https://apikey.net/api/old/index?type=md5CurrentTime | (请求该接口参数,会返回当前北京时间日期时间时分秒的32位MD5大写加密) |
userPassword | 否 | string | https://apikey.net/api/old/index?type=userPassword | (请求该接口参数,会返回一个随机的高复杂度的密码字符串[密码字符串的长度在6至16位随机生成]) |
userPassword2 | 否 | string | https://apikey.net/api/old/index?type=userPassword2 | (请求该接口参数,会返回一个随机的高复杂度的2位字符串) |
userPassword4 | 否 | string | https://apikey.net/api/old/index?type=userPassword4 | (请求该接口参数,会返回一个随机的高复杂度的4位字符串) |
userPassword6 | 否 | string | https://apikey.net/api/old/index?type=userPassword6 | (请求该接口参数,会返回一个随机的高复杂度的6位字符串) |
userPassword8 | 否 | string | https://apikey.net/api/old/index?type=userPassword8 | (请求该接口参数,会返回一个随机的高复杂度的8位字符串) |
userPassword10 | 否 | string | https://apikey.net/api/old/index?type=userPassword10 | (请求该接口参数,会返回一个随机的高复杂度的10位字符串) |
userPassword12 | 否 | string | https://apikey.net/api/old/index?type=userPassword12 | (请求该接口参数,会返回一个随机的高复杂度的12位字符串) |
userPassword14 | 否 | string | https://apikey.net/api/old/index?type=userPassword14 | (请求该接口参数,会返回一个随机的高复杂度的14位字符串) |
userPassword16 | 否 | string | https://apikey.net/api/old/index?type=userPassword16 | (请求该接口参数,会返回一个随机的高复杂度的16位字符串) |
userPassword32 | 否 | string | https://apikey.net/api/old/index?type=userPassword32 | (请求该接口参数,会返回一个随机的高复杂度的32位字符串) |
userPassword64 | 否 | string | https://apikey.net/api/old/index?type=userPassword64 | (请求该接口参数,会返回一个随机的高复杂度的64位字符串) |
userPassword128 | 否 | string | https://apikey.net/api/old/index?type=userPassword128 | (请求该接口参数,会返回一个随机的高复杂度的128位字符串) |
userPassword256 | 否 | string | https://apikey.net/api/old/index?type=userPassword256 | (请求该接口参数,会返回一个随机的高复杂度的256位字符串) |
userPassword516 | 否 | string | https://apikey.net/api/old/index?type=userPassword516 | (请求该接口参数,会返回一个随机的高复杂度的516位字符串) |
userPassword1024 | 否 | string | https://apikey.net/api/old/index?type=userPassword1024 | (请求该接口参数,会返回一个随机的高复杂度的1024位字符串) |
userPassword(1-10000) | 否 | string | https://apikey.net/api/old/index?type=userPassword9527 | (请求该接口参数,会返回一个随机的高复杂度的1-10000位字符串,例如:https://apikey.net/api/old/index?type=userPassword9527) |
名称 | 类型 | 说明 |
---|---|---|
code | int | 状态码 |
msg | string | 状态信息 |
data | string | 请求结果数据集 |
debug | string/array | 调试数据 |
exec_time | float | 执行耗时 |
user_ip | string | 客户端IP |
<?php
/**
* API请求DEMO
*
* 本demo支持GET与POST请求,同时支持签名验证与无需签名。
*/
//你申请的key密钥
$API_KEY = '你的接口密钥,登录控制台后在密钥管理页面申请';
//API接口地址
$API_URL = 'https://apikey.net/api/old/index';
$get_post_data = array(
//接口参数,一行一个,可按照接口文档-请求参数 的参数填写,或者直接复制开发工具下面的测试代码。
'key' => $API_KEY,
'参数名' => '参数值',
);
//签名校验的 SK:(在用户控制台https://apikey.net/user/key的秘钥安全设置->签名校验 开启后才会生效,没开启签名校验留空即可。)
$sk = '56777ab62ff752fbd57ab7228fc2fc43';
/*发起请求API接口:
第1个参数:API接口地址URL,跟上面的同名变量相对应,无需更改。
第2个参数:API接口参数数组,跟上面的同名变量相对应,无需更改。
第3个参数:请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
第4个参数:是否验证签名,true验证签名,否则false不验证签名,根据用户控制台 https://apikey.net/user/key 的 秘钥安全设置->签名校验 开启后才会生效,如没开启,填写false即可。
第5个参数:如果第4个参数开启验证签名,此处必须填写 SK ,跟上面的同名变量相对应,无需更改。
*/
$resdata = api::send($API_URL, $get_post_data, 'GET', true, $sk); //发起请求,注意这里要选择接口支持的协议,默认GET,可选POST
//打印请求结果
print($resdata);
///////////////你的业务代码可写在这里处理API返回的数据
/**
* API请求类
*/
class api
{
public static function send($API_URL, $get_post_data, $type, $ifsign, $sk)
{
$get_post_data = http_build_query($get_post_data);
if ($ifsign) {
$sign = md5($get_post_data . $sk);
$res = self::send_curl($API_URL, $type, $get_post_data, $sign);
} else {
$res = self::send_curl($API_URL, $type, $get_post_data, null);
}
return $res;
}
//封装好的CURL请求函数,支持POST|GET
public static function send_curl($API_URL, $type, $get_post_data, $sign)
{
$ch = curl_init();
if ($type == 'POST') {
curl_setopt($ch, CURLOPT_URL, $API_URL);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $get_post_data);
} elseif ($type == 'GET') {
curl_setopt($ch, CURLOPT_URL, $API_URL . '?' . $get_post_data);
}
if ($sign) {
curl_setopt($ch, CURLOPT_HTTPHEADER, ['sign:' . $sign]);
}
curl_setopt($ch, CURLOPT_REFERER, $API_URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
$resdata = curl_exec($ch);
curl_close($ch);
return $resdata;
}
}
//jQuery-Ajax
$.ajax({
url: 'https://apikey.net/api/old/index',
data: {
//接口参数,一行一个,可按照接口文档-请求参数 的参数填写,或者直接复制开发工具下面的测试代码。
key: '你的接口密钥,登录控制台后在密钥管理页面申请',
参数名: '参数值',
},
type: 'GET', //请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
dataType: 'json',
success: function(data) {
console.log(data); //请求成功,输出结果到控制台
},
timeout: 3000, //超时时间
error: function(data) {
console.log('请求失败'); //失败处理
}
});
子程序名 | 返回值类型 | 公开 | 备 注 | ||
__启动窗口_创建完毕 |
子程序名 | 返回值类型 | 公开 | 备 注 | ||
Send_API |
变量名 | 类 型 | 静态 | 数组 | 备 注 | ||
REQU_Data | 文本型 | 提交字符串 | ||||
return | 文本型 | 返回字符串 | ||||
API_URL | 文本型 | 接口地址 | ||||
API_KEY | 文本型 | 接口密钥 |
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
public class Test {
public static void main(String[] args) {
try {
URL url = new URL("https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请");
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
// 设置请求方式
connection.setRequestMethod("GET");
connection.connect();
// 获取响应码
int responseCode = connection.getResponseCode();
if (responseCode == HttpURLConnection.HTTP_OK) {
BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
String line;
while ((line = reader.readLine()) != null) {
// 读取到的内容给line变量
System.out.println(line);
}
reader.close();
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
// 发起一个GET请求
resp, err := http.Get("https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请")
if err != nil {
fmt.Println("http get error", err)
return
}
// 读取响应结果
result, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("http read error", err)
return
}
// 关闭响应结果
defer resp.Body.Close()
fmt.Println(string(result))
}
```
# 导入requests库
import requests
# 设置url
url = 'https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请'
# 发送post请求
response = requests.post(url, data={'key1': 'value1', 'key2': 'value2'})
# 获取响应内容
result = response.json()
# 打印结果
print(result)
```
// 以下是使用Node.js进行GET和POST请求API接口的示例代码:
const https = require('https');
const querystring = require('querystring');
// 定义请求选项
const options = {
hostname: 'apikey.net',
path: '/api/old/index',
method: 'GET'
};
// 发送GET请求
https.get(options, res => {
console.log(`statusCode: ${res.statusCode}`);
res.on('data', d => {
process.stdout.write(d);
});
}).on('error', error => {
console.error(error);
});
// 发送POST请求
const postData = querystring.stringify({
'key1': 'value1',
'key2': 'value2'
});
const postOptions = {
hostname: 'apikey.net',
path: '/api/old/index',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': Buffer.byteLength(postData)
}
};
const postReq = https.request(postOptions, res => {
console.log(`statusCode: ${res.statusCode}`);
res.on('data', d => {
process.stdout.write(d);
});
});
postReq.on('error', error => {
console.error(error);
});
postReq.write(postData);
postReq.end();
/*
这个示例代码使用Node.js内置的`https`模块进行HTTP请求。
首先定义了一个GET请求的选项,然后使用`https.get()`方法发送了GET请求。在响应流上注册回调函数,以便在收到响应数据时将其输出到控制台。在出现错误时,也注册了错误处理程序。
类似地,我们也定义了一个POST请求选项,并使用`https.request()`方法发送它。需要在请求头中包含适当的`Content-Type`和`Content-Length`以确保服务器可以正确解析请求体。请求体由`write()`方法写入,并在请求结束时通过调用`end()`方法通知请求对象已经完成。
注意,此示例默认使用`querystring`模块将数据作为x-www-form-urlencoded格式进行编码。如果需要使用其他格式(如JSON),则需要相应地更改请求头和请求体的编码方式。
另外,为了确保HTTPS请求的安全性,您也可以添加其他选项,例如验证服务器证书、设置代理等。
*/
以下是使用C语言进行GET和POST请求API接口的示例代码:
``` c
#include
#include
#include
#include // 需要安装curl库
// API地址
const char* url = "https://apikey.net/api/old/index";
// GET请求
void getRequest(CURL* curl) {
CURLcode res;
// 设置URL
curl_easy_setopt(curl, CURLOPT_URL, url);
// 执行请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
}
// POST请求
void postRequest(CURL* curl) {
CURLcode res;
// 设置URL
curl_easy_setopt(curl, CURLOPT_URL, url);
// 设置POST数据
const char* postData = "key=你的接口密钥,登录控制台后在密钥管理页面申请&key1=value1";
curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postData);
// 执行请求
res = curl_easy_perform(curl);
if(res != CURLE_OK) {
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
}
}
int main() {
CURL* curl;
CURLcode res;
// 初始化curl
curl = curl_easy_init();
if(curl) {
// 设置SSL验证
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
// GET请求
getRequest(curl);
// POST请求
postRequest(curl);
// 清理curl资源
curl_easy_cleanup(curl);
}
return 0;
}
```
这个示例代码使用了libcurl库进行HTTP请求。
首先,需要设置API地址。然后,基于`CURL`结构体创建curl句柄,并使用`curl_easy_setopt()`函数设置选项。这里设置了SSL验证,以确保请求的安全性。
在GET请求中,只需将URL设置为选项,然后调用`curl_easy_perform()`函数执行请求即可。
在POST请求中,还需要将POST数据作为字符串传递给`CURLOPT_POSTFIELDS`选项。
需要注意的是,为了避免内存泄漏,应该在使用完curl句柄之后调用`curl_easy_cleanup()`函数进行清理。
除了上述示例代码外,libcurl库还提供了更多高级选项,例如处理HTTP头、上传文件等。可以参考文档进行更详细的了解。
以下是一个使用C++请求API接口的示例代码:
```cpp
#include
#include
int main() {
CURL *curl;
CURLcode res;
std::string url = "https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请";
std::string response;
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, [](char *ptr, size_t size, size_t nmemb, void *userdata) -> size_t {
std::string *response = reinterpret_cast(userdata);
response->append(ptr, size * nmemb);
return size * nmemb;
});
curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
res = curl_easy_perform(curl);
if (res == CURLE_OK) {
std::cout << "Response: " << response << std::endl;
} else {
std::cerr << "Error: " << curl_easy_strerror(res) << std::endl;
}
curl_easy_cleanup(curl);
}
return 0;
}
```
解释:
1. 引入需要的头文件:``用于输出结果,``用于使用libcurl库。
2. 定义需要请求的API接口的URL和存储响应数据的字符串变量。
3. 初始化一个CURL对象。
4. 设置CURL对象的参数:请求的URL(`CURLOPT_URL`)、是否跟随重定向(`CURLOPT_FOLLOWLOCATION`)、响应数据的写入函数(`CURLOPT_WRITEFUNCTION`)和响应数据的写入位置(`CURLOPT_WRITEDATA`)。
5. 发送HTTP请求并获取响应数据,判断返回状态码是否OK。
6. 清理CURL对象。
运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装libcurl库。
以下是一个使用C#请求API接口的示例代码:
```csharp
using System;
using System.Net.Http;
using System.Threading.Tasks;
class Program {
static async Task Main(string[] args) {
HttpClient client = new HttpClient();
string url = "https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请";
HttpResponseMessage response = await client.GetAsync(url);
if (response.IsSuccessStatusCode) {
string responseBody = await response.Content.ReadAsStringAsync();
Console.WriteLine("Response: " + responseBody);
} else {
Console.WriteLine("Error: " + response.StatusCode);
}
}
}
```
解释:
1. 引用需要的命名空间:`System.Net.Http`用于使用HttpClient类,`System.Threading.Tasks`用于异步执行请求操作。
2. 创建一个HttpClient对象。
3. 定义需要请求的API接口的URL。
4. 发送GET请求到指定的API接口URL,并获取响应结果。
5. 判断响应状态是否成功,如果成功则读取响应数据(使用ReadAsStringAsync方法),否则输出错误信息(使用StatusCode属性)。
运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装.NET Framework或.NET Core SDK。
以下是VB请求API接口的示例代码:
```
' 1. 引入Microsoft XML v6.0库
' 2. 创建一个XMLHTTP对象
Dim xhr As XMLHTTP
Set xhr = New XMLHTTP
' 3. 设置请求的URL、方法,以及是否异步等
xhr.Open "GET", "https://apikey.net/api/old/index?key=你的接口密钥,登录控制台后在密钥管理页面申请", False
' 4. 发送请求
xhr.send
' 5. 获取响应结果
Dim responseText As String
responseText = xhr.responseText
' 6. 输出响应结果
Debug.Print responseText
' 7. 释放资源
Set xhr = Nothing
```
在这个示例中,我们创建了一个XMLHTTP对象,用于请求API接口。我们先调用`open`方法来设置请求的URL、方法,以及是否异步。然后,我们发送请求,并使用`responseText`属性来获取响应结果。最后,我们将响应结果打印到控制台,完成操作后释放资源,以防止内存泄漏。请注意,以上示例代码为同步请求,如果想使用异步请求,需要设置第三个参数为`True`,并在请求结束时处理`OnReadyStateChange`事件。
参数名 | 填写参数值 |
---|---|
请 登录 后发表评论
填写业务相关参数免费在线调试
生成符合你的开发语言代码,复制即可
调整你后端部分逻辑代码即可上线使用