跳到主要内容

API的调用

您发布的API一般情况下是一个模型预测服务,可能会传递多个参数,而且参数类型比较复杂。
平台为您提供了一个在线的的API调试调用的工具,方便您进行API的验证和熟悉其调用方式。

打开API调用页面

开放API列表页中,点击要调试调用的API记录后边的 调试 按钮

open

进入调用工具页面

open

调用API

进入调用工具页面,会根据您选择的API的相关信息,自动带入一些参数:请求的参数类型,参数名称,认证信息等。

body auth

输入参数

直接输入或者复制粘贴参数内容

param

传入的参数是复杂的类型ndarray(image转换后)或者base64 image

1. 点击 上传 按钮,选择转换类型
  • base64 将上传的图片转换成base64
  • ndarray 将上传的图片转换成ndarray

upload type

2. 上传图片后,点击 确认 按钮

confirm ready

发送

点击 Send 按钮,发送请求

ready

API调用方式

点击 Code 按钮,可以查看各种开发语言的API调用方式

ready ready

cURL

curl
curl --location --request POST 'https://api-core.ailines.cn/public/1-63/v2/predict' \
--header 'authorization: 0c9d5101f70049d5b99ed13ec97793bd' \
--form 'input_series_1=iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAAAAABXZoBIAAAA6UlEQVR4nGNg...'

Python

python

import requests
from requests_toolbelt.multipart.encoder import MultipartEncoder

url = "https://api-core.ailines.cn/public/1-63/v2/predict"

headers = {
"authorization": "0c9d5101f70049d5b99ed13ec97793bd",
}

multipart_data = MultipartEncoder(
fields={
"input_series_1": "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAAAAABXZoBIAAAA6UlEQVR4nGNg...",
}
)

headers["Content-Type"] = multipart_data.content_type

response = requests.request("POST", url, data=multipart_data, headers=headers)
print(response.text)

Golang

go
package main

import (
"bytes"
"fmt"
"io"
"log"
"mime/multipart"
"net/http"
)

func main() {
url := "https://api-core.ailines.cn/public/1-63/v2/predict"
method := "POST"

data := &bytes.Buffer{}
writer := multipart.NewWriter(data)
_ = writer.WriteField("input_series_1", "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAAAAABXZoBIAAAA6UlEQVR4nGNg...")

err := writer.Close()
if err != nil {
log.Fatal(err)
}

client := &http.Client{}
req, err := http.NewRequest(method, url, data)
if err != nil {
log.Fatal(err)
}

req.Header.Add("authorization", "0c9d5101f70049d5b99ed13ec97793bd")

req.Header.Set("Content-Type", writer.FormDataContentType())
res, err := client.Do(req)
if err != nil {
log.Fatal(err)
}
defer res.Body.Close()

body, err := io.ReadAll(res.Body)
if err != nil {
log.Fatal(err)
}
fmt.Println(string(body))
}

Nodejs

nodejs
var request = require("request");
var options = {
method: "POST",
url: "https://api-core.ailines.cn/public/1-63/v2/predict",
headers: {
"authorization": "0c9d5101f70049d5b99ed13ec97793bd",
},
formData: {
"input_series_1": "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAAAAABXZoBIAAAA6UlEQVR4nGNg...",
}
};
request(options, function (err, response) {
if (err) {
console.error(err);
} else {
console.log(response.body);
}
});

Java

java
OkHttpClient client = new OkHttpClient().newBuilder().build();
MediaType mediaType = MediaType.parse("text/plain");

RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("input_series_1", "iVBORw0KGgoAAAANSUhEUgAAABwAAAAcCAAAAABXZoBIAAAA6UlEQVR4nGNg...")
.build();

Request request = new Request.Builder()
.url("https://api-core.ailines.cn/public/1-63/v2/predict")
.method("POST", body)
.addHeader("authorization", "0c9d5101f70049d5b99ed13ec97793bd")
.build();

Response response = client.newCall(request).execute();