小程序API提交

# 什么是小程序API提交?与上传sitemap文件有何区别?

小程序API提交是将小程序资源提交到搜索的一种方式,即开发者可通过请求API接口,将小程序资源path路径,提交到API接口中。相比于上传sitemap文件,API提交方式能给用户更便捷的提交体验,两种方式都会占用当日提交配额。有较大资源量需提交时,建议分次推送,每次不超过1000条。

# 请求路径:

POST https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN

# 参数说明:

参数名 类型 是否必须 描述 示例
access_token string 权限校验Token,获取方式见开发者服务权限说明
type int 通过TYPE字段选择上传接口。
· 0:周级提交,一周左右生效;
· 1:天级提交,2~3天生效;
· 2:小时级提交,1小时内生效
0
url_list string 小程序path集合,多个path用逗号分隔。
· 天级/周级配额会根据开发者在前一周的周一至周五提交资源活跃度及资源质量,于次周一进行动态调整,具体以平台显示为准。
/pages/index1?id=1,/pages/index2

# 提交代码示例

# python3 提交示例
import requests
url = "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN"
path_list = "/pages/index1,/pages/index2"
data = {"type": 1, "url_list": path_list}  
res = requests.post(url=url, data=data) 
print(res.text)
# curl 提交示例
curl -H "application/x-www-form-urlencoded" -X POST -d 'type=1&url_list=/pages/index1,/pages/index2" "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN" 
# java 提交示例
String url = "https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api";

 List<String> list = new ArrayList<>();
 list.add("/pages/index/test");
 list.add("/pages/index/test2?id=1");
 list.add("/pages/index/test3/query?id=1&age=10");
 // 设置请求参数
 paramMap.put("url_list",list);
 paramMap.put("type",0);
 paramMap.put("access_token","dwhiuhv32noi3nco2innvpnsdv");
 HttpClient httpClient = new HttpClient();
 httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(15000);
 PostMethod postMethod = new PostMethod(url);
 postMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT, 60000);
        
        .
        .
        .
 //执行POST方法post方法
 int statusCode = httpClient.executeMethod(postMethod);
# php 提交示例
<?php
$urls = array(
    'https://www.example.com/1.html',
    'https://www.example.com/2.html',
);
$data['type'] = 1;
$data['url_list'] = implode(",", $urls);
$api = 'https://openapi.baidu.com/rest/2.0/smartapp/access/submitsitemap/api?access_token=ACCESS_TOKEN';
$ch = curl_init();
$options =  array(
    CURLOPT_URL => $api,
    CURLOPT_POST => true,
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_NOBODY => false,
    CURLOPT_POSTFIELDS => http_build_query($data),
    CURLOPT_HTTPHEADER => array('Content-Type: application/x-www-form-urlencoded'),
);
curl_setopt_array($ch, $options);
$result = curl_exec($ch);
echo $result;
?>

# 返回值示例:

{
  "errno": 0,
  "msg": "success"
}

# 错误码说明:

错误码 错误描述
0 成功
-1024 业务异常
500 对不起,服务器出错了,请稍候再试
2002 小程序不存在/选择的收录级别不合法/url数量不合法
30001 参数有误
30013 数量超上限
47005 文件上传失败
60005 尚未绑定熊掌ID,请先绑定熊掌ID