请求地址: https://api-gw.fan-b.com/1688/cat_get
请求参数:cid=0
参数说明:cid:商品分类ID,可以用cid=0来获得所有一级类目
Version: Date:
-- 请求示例 url 默认请求参数已经URL编码处理 curl -i "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"
<?php // 请求示例 url 默认请求参数已经URL编码处理 // 本示例代码未加密secret参数明文传输,若要加密请参考:https://open.fan-b.com/help/demo/sdk/demo-sign.php $method = "GET"; $url = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"; $curl = curl_init(); curl_setopt($curl, CURLOPT_CUSTOMREQUEST, $method); curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,FALSE); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,FALSE); curl_setopt($curl, CURLOPT_FAILONERROR, false); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_HEADER, true); curl_setopt($curl, CURLOPT_ENCODING, "gzip"); var_dump(curl_exec($curl)); ?>
<?php //定义缓存目录和引入文件 define("DIR_RUNTIME","runtime/"); define("DIR_ERROR","runtime/"); define("SECACHE_SIZE","0"); //SDK下载地址 https://open.fan-b.com/help/demo/sdk/onebound-api-sdk.zip include ("ObApiClient.php"); $obapi = new otao\ObApiClient(); $obapi->api_url = "http://api-gw.fan-b.com/"; $obapi->api_urls = array("http://api-gw.fan-b.com/","http://api-1.fan-b.com/");//备用API服务器 $obapi->api_urls_on = true;//当网络错误时,是否启用备用API服务器 $obapi->api_key = "<您自己的apiKey>"; $obapi->api_secret = "<您自己的apiSecret>"; $obapi->api_version =""; $obapi->secache_path ="runtime/"; $obapi->secache_time ="86400"; $obapi->cache = true; $api_data = $obapi->exec( array( "api_type" =>"1688", "api_name" =>"cat_get", "api_params"=>array ( 'cid' => '0', ) ) ); var_dump($api_data); ?>
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Reader; import java.net.URL; import java.nio.charset.Charset; import org.json.JSONException; import org.json.JSONObject; import java.io.PrintWriter; import java.net.URLConnection; public class Example { private static String readAll(Reader rd) throws IOException { StringBuilder sb = new StringBuilder(); int cp; while ((cp = rd.read()) != -1) { sb.append((char) cp); } return sb.toString(); } public static JSONObject postRequestFromUrl(String url, String body) throws IOException, JSONException { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); conn.setDoOutput(true); conn.setDoInput(true); PrintWriter out = new PrintWriter(conn.getOutputStream()); out.print(body); out.flush(); InputStream instream = conn.getInputStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { instream.close(); } } public static JSONObject getRequestFromUrl(String url) throws IOException, JSONException { URL realUrl = new URL(url); URLConnection conn = realUrl.openConnection(); InputStream instream = conn.getInputStream(); try { BufferedReader rd = new BufferedReader(new InputStreamReader(instream, Charset.forName("UTF-8"))); String jsonText = readAll(rd); JSONObject json = new JSONObject(jsonText); return json; } finally { instream.close(); } } public static void main(String[] args) throws IOException, JSONException { // 请求示例 url 默认请求参数已经URL编码处理 String url = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"; JSONObject json = getRequestFromUrl(url); System.out.println(json.toString()); } }
//using System.Net.Security; //using System.Security.Cryptography.X509Certificates; private const String method = "GET"; static void Main(string[] args) { String bodys = ""; // 请求示例 url 默认请求参数已经做URL编码 String url = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"; HttpWebRequest httpRequest = null; HttpWebResponse httpResponse = null; if (url.Contains("https://")) { ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url)); } else { httpRequest = (HttpWebRequest)WebRequest.Create(url); } httpRequest.Method = method; if (0 < bodys.Length) { byte[] data = Encoding.UTF8.GetBytes(bodys); using (Stream stream = httpRequest.GetRequestStream()) { stream.Write(data, 0, data.Length); } } try { httpResponse = (HttpWebResponse)httpRequest.GetResponse(); } catch (WebException ex) { httpResponse = (HttpWebResponse)ex.Response; } Console.WriteLine(httpResponse.StatusCode); Console.WriteLine(httpResponse.Method); Console.WriteLine(httpResponse.Headers); Stream st = httpResponse.GetResponseStream(); StreamReader reader = new StreamReader(st, Encoding.GetEncoding("utf-8")); Console.WriteLine(reader.ReadToEnd()); Console.WriteLine("\n"); } public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) { return true; }
# coding:utf-8 """ Compatible for python2.x and python3.x requirement: pip install requests """ from __future__ import print_function import requests # 请求示例 url 默认请求参数已经做URL编码 url = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0" headers = { "Accept-Encoding": "gzip", "Connection": "close" } if __name__ == "__main__": r = requests.get(url, headers=headers) json_obj = r.json() print(json_obj)
url := fmt.Sprintf("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0", params) req, err := http.NewRequest("GET", url, nil) if err != nil { panic(err) } req.Header.Set("Authorization", apiKey) client := &http.Client{} resp, err := client.Do(req) if err != nil { panic(err) } defer resp.Body.Close() body, err := ioutil.ReadAll(resp.Body) if err != nil { panic(err) } fmt.Println(string(body))
fetch('https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({"cid":"0"})// request parameters here }) .then(response => response.json()) .then(data => console.log(data)) .catch(error => console.error(error));
<script src="js/obapi.js"></script> <script type="text/javascript"> obAPI.config({ debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 api_url: "https://api-gw.fan-b.com", // api_key: "<您自己的apiKey>", // 必填, api_secret: "<您自己的apiSecret>", // lang: "cn", // timestamp: "", // 必填,生成签名的时间戳 nonceStr: "", // 必填,生成签名的随机串 signature: "",// 必填,签名 jsApiList: [] // 必填,需要使用的JS接口列表 }); </script> <div id="api_data_box"></div> <script type="text/javascript"> obAPI.exec( { "api_type":"1688", "api_name" : "cat_get", "api_params": {"cid":"0"}//cid=0,#具体参数请参考文档说明 }, function(e){ document.querySelector("#api_data_box").innerHTML=JSON.stringify(e) } ); </script>
require "net/http" require "uri" url = URI("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Get.new(url) response = http.request(request) puts response.read_body
import Foundation let url = URL(string: "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0")! let task = URLSession.shared.dataTask(with: url) { data, response, error in guard let data = data else { print("Error: No data was returned") return } if let data = String(data: data, encoding: .utf8) { print(data) } } task.resume()
NSURL *myUrl = [NSURL URLWithString:@"https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"]; NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:myUrl cachePolicy:NSURLRequestReloadIgnoringCacheData timeoutInterval:60.0]; [request setHTTPMethod:@"GET"]; NSError *error; NSURLResponse *response; NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error]; NSString *result = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; NSLog(@"%@",result);
#include<stdio.h> #include <stdlib.h> #include<string.h> #include<curl/curl.h> int main(){ CURL *curl; CURLcode res; struct curl_slist *headers=NULL; char url[] = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"; curl_global_init(CURL_GLOBAL_ALL); curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL,url); headers = curl_slist_append(headers, "Content-Type: application/json"); curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers); res = curl_easy_perform(curl); if(res != CURLE_OK){ printf("curl_easy_perform(): %s\n",curl_easy_strerror(res)); } curl_easy_cleanup(curl); } curl_global_cleanup(); return 0; }
#include<iostream> #include<string> #include<curl/curl.h> using namespace std; static size_t Data(void *ptr, size_t size, size_t nmemb, string *stream) { std::size_t realSize = size *nmemb; auto *realPtr = reinterpret_cast<char *>(ptr); for (std::size_t i=0;i<realSize;++i) { *(stream) += *(realPtr + i); } return realSize; } int main(){ CURL *curl; CURLcode result; string readBuffer; curl = curl_easy_init(); if(curl) { curl_easy_setopt(curl, CURLOPT_URL, "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"); curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L); curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, Data); curl_easy_setopt(curl, CURLOPT_WRITEDATA, &readBuffer); result = curl_easy_perform(curl); if(result == CURLE_OK) { cout<<readBuffer<<endl; }else{ cerr<<"curl_easy error:"<<curl_easy_strerror(result)<<endl; } curl_easy_cleanup(curl); } return 0; }
const https = require("https"); https.get("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0", (resp) => { let data = ""; resp.on("data", (chunk) => { data += chunk; }); resp.on("end", () => { console.log(data); }); }).on("error", (err) => { console.log("Error: " + err.message); });
import java.net.HttpURLConnection import java.net.URL fun main() { val url = URL("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0") val con = url.openConnection() as HttpURLConnection con.requestMethod = "GET" val responseCode = con.responseCode if (responseCode == HttpURLConnection.HTTP_OK) { // success val inputLine = con.inputStream.bufferedReader().use { it.readText() } println(inputLine) } else { println("GET request failed") } }
use std::io::{self, Read}; use reqwest; fn main() -> io::Result<()> { let mut resp = reqwest::get("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0")?; let mut content = String::new(); resp.read_to_string(&mut content)?; println!("{}", content); Ok(()) }
library(httr) r <- GET("https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0") content(r)
url = "https://api-gw.fan-b.com/1688/cat_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&cid=0"; response = webread(url); disp(response);
{ "itmes": { "itme": [ { "id": 312, "name": "内衣", "pid": 0, "root_id": 0 }, { "id": 54, "name": "服饰配件、饰品", "pid": 0, "root_id": 0 }, { "id": 10166, "name": "女装", "pid": 0, "root_id": 0 }, { "id": 2, "name": "食品酒水", "pid": 0, "root_id": 0 }, { "id": 122916001, "name": "宠物及园艺", "pid": 0, "root_id": 0 }, { "id": 122916002, "name": "汽车用品", "pid": 0, "root_id": 0 }, { "id": 58, "name": "灯饰照明", "pid": 0, "root_id": 0 }, { "id": 10165, "name": "男装", "pid": 0, "root_id": 0 }, { "id": 57, "name": "电子元器件", "pid": 0, "root_id": 0 }, { "id": 53, "name": "传媒、广电", "pid": 0, "root_id": 0 }, { "id": 70, "name": "安全、防护", "pid": 0, "root_id": 0 }, { "id": 68, "name": "包装", "pid": 0, "root_id": 0 }, { "id": 67, "name": "办公、文化", "pid": 0, "root_id": 0 }, { "id": 7, "name": "数码、电脑", "pid": 0, "root_id": 0 }, { "id": 5, "name": "电工电气", "pid": 0, "root_id": 0 }, { "id": 4, "name": "纺织、皮革", "pid": 0, "root_id": 0 }, { "id": 311, "name": "童装", "pid": 0, "root_id": 0 }, { "id": 1038378, "name": "鞋", "pid": 0, "root_id": 0 }, { "id": 1042954, "name": "箱包皮具", "pid": 0, "root_id": 0 }, { "id": 65, "name": "机械及行业设备", "pid": 0, "root_id": 0 }, { "id": 59, "name": "五金、工具", "pid": 0, "root_id": 0 }, { "id": 8, "name": "化工", "pid": 0, "root_id": 0 }, { "id": 55, "name": "橡塑", "pid": 0, "root_id": 0 }, { "id": 201346017, "name": "建材", "pid": 0, "root_id": 0 }, { "id": 64, "name": "环保", "pid": 0, "root_id": 0 }, { "id": 10208, "name": "仪器仪表", "pid": 0, "root_id": 0 }, { "id": 15, "name": "日用百货", "pid": 0, "root_id": 0 }, { "id": 1501, "name": "母婴用品", "pid": 0, "root_id": 0 }, { "id": 96, "name": "家纺家饰", "pid": 0, "root_id": 0 }, { "id": 97, "name": "美容护肤/彩妆", "pid": 0, "root_id": 0 }, { "id": 6, "name": "家用电器", "pid": 0, "root_id": 0 }, { "id": 13, "name": "家装建材", "pid": 0, "root_id": 0 }, { "id": 12, "name": "交通运输", "pid": 0, "root_id": 0 }, { "id": 17, "name": "工艺品、礼品", "pid": 0, "root_id": 0 }, { "id": 10, "name": "能源", "pid": 0, "root_id": 0 }, { "id": 1, "name": "农业", "pid": 0, "root_id": 0 }, { "id": 71, "name": "汽摩及配件", "pid": 0, "root_id": 0 }, { "id": 509, "name": "通信产品", "pid": 0, "root_id": 0 }, { "id": 1813, "name": "玩具", "pid": 0, "root_id": 0 }, { "id": 9, "name": "冶金矿产", "pid": 0, "root_id": 0 }, { "id": 66, "name": "医药、保养", "pid": 0, "root_id": 0 }, { "id": 72, "name": "印刷", "pid": 0, "root_id": 0 }, { "id": 18, "name": "运动户外", "pid": 0, "root_id": 0 }, { "id": 1426, "name": "机床", "pid": 0, "root_id": 0 }, { "id": 69, "name": "商务服务", "pid": 0, "root_id": 0 }, { "id": 2829, "name": "二手设备转让", "pid": 0, "root_id": 0 }, { "id": 2805, "name": "加工", "pid": 0, "root_id": 0 }, { "id": 130822220, "name": "个护/家清", "pid": 0, "root_id": 0 }, { "id": 130823000, "name": "性保健品", "pid": 0, "root_id": 0 }, { "id": 130822002, "name": "餐饮生鲜", "pid": 0, "root_id": 0 } ] }, "translate_status": "", "translate_time": 0, "language": { "default_lang": "cn", "current_lang": "cn" }, "error": "", "reason": "", "error_code": "0000", "cache": 0, "api_info": "today:5 max:10000", "execution_time": 0.608, "server_time": "Beijing/2021-03-05 11:58:51", "client_ip": "106.6.39.197", "call_args": [], "api_type": "1688", "translate_language": "zh-CN", "translate_engine": "google_cn", "server_memory": "3.52MB", "request_id": "gw-3.6041ac7b2705c" }
{ "error": "item-not-found", "reason": "商品没找到", "error_code": "2000", "success": 0, "cache": 0, "api_info": "today:0 max:10000", "execution_time": 0.081, "server_time": "Beijing/2020-06-10 23:44:00", "call_args": [], "api_type": "taobao", "request_id": "15ee0ffc041242"}