本接口用于向图像搜索实例中添加图片。
调用本接口时,需要在URL中传入instanceName参数,表示要操作的实例,其它参数拼接成系统指定的格式,然后通过Body进行传输。请求路径为/item/add。
请求参数
- URL中参数
名称 类型 是否必须 描述 instanceName String 是 操作实例名称。 - Body中参数
名称 类型 是否必须 描述 item_id String 是 商品或者图片ID。 说明 根据实际情况自定义参数值。比如:上衣001号、裤子002号等。cat_id String - 业务场景为商品搜索时,为必选参数。
- 业务场景为通用搜索时,为可选参数。
类目ID。 crop boolean 否 是否需要进行主体识别,默认为 true
。region String 否 图片的主体区域,格式为 x1,x2,y1,y2
,其中x1,y1
是左上角的点,x2,y2
是右下角的点,默认自动识别主体区域。cust_content String 是 用户自定义的内容。 pic_list List 是 图片名称列表。 pic_map Map 是 每个图片对应的内容。 - Body构造方法
Body的格式如下:
key1,key1_start_offset,key1_end_offset#...#keyn,keyn_start_offset,keyn_end_offset^key1_content...keyn_content
整体来看body可以分成两个部分。^前面表示Meta部分,^后面表示Content部分。Meta部分描述有哪些Key ,以及每个Key对应值在 Content中的偏移。多个Key之间用井号(#)分隔,单个Key内部用英文逗号(,)分隔。Key后面的两个数字分别表示Key在Content中的起始位置和结束位置。此外,对于pic_list中每个图片名称需要进行base64编码。多个图片名称之间用逗号拼接成一个字符串。pic_map中每一个key和pic_list中的对应,并且pic_map中的图片内容也需要进行base64编码。
返回参数
名称 | 类型 | 描述 |
---|---|---|
Success | Boolean | 请求是否成功。 |
RequestId | String | 请求ID。 |
Code | int | 错误码。0表示成功,非0表示失败。 |
Message | String | 错误信息。 |
返回格式
{ "Message":"success", "RequestId":"73B5133C-84EE-4F0A-B972-23CCCBFB7CD5", "Success":true, "Code":0}
示例
假定某个用户要往实例goodssearch中添加一个商品。item_id为1000,cat_id为0,商品的自定义内容cust_content为 {"key1":"value1"}。商品中要添加的图片名称为shoes1.jpg,图片内容为pic_content1,以及shoes2.jpg,图片内容为pic_content2。最终请求方式如下:
URL: /item/add?instaneName=goodssearch
POST Body:
cust_content,0,17#item_id,17,21#c2hvZXMyLmpwZw==,21,37#cat_id,37,38#pic_list,38,71#c2hvZXMxLmpwZw==,71,87^{"key1":"value1"}1000cGljX2NvbnRlbnQy0c2hvZXMyLmpwZw==,c2hvZXMxLmpwZw==cGljX2NvbnRlbnQx
说明:其中 c2hvZXMyLmpwZw== 表示 shoes1.jpg 进行 base64 编码后的值, c2hvZXMxLmpwZw== 表示 shoes2.jpg 进行 base64 编码后的值