接口簡介
AI舌診高級版接口主要通過拍攝舌頭圖片進行識別,返回十種舌像出現(xiàn)的概率值,加上身體可能出現(xiàn)的證型和對應(yīng)的調(diào)理方法。
接口地址
訪問地址:http://mnpc.com.cn/admin/api/tongue_analysis_advance
請求方式:POST
請求格式:application/x-www-form-urlencode
* 所有的請求和響應(yīng)數(shù)據(jù)編碼皆為utf-8格式,URL里的所有參數(shù)名和參數(shù)值請做URL編碼
請求參數(shù)
字段 | 類型 | 是否必傳 | 說明 |
---|---|---|---|
appid | String | 是 | 開放平臺創(chuàng)建的appid |
imgpath | String | 是 | 傳入進行識別的網(wǎng)絡(luò)圖片地址 |
timestamp | String | 是 | 請求端口的時間,時間格式y(tǒng)yyyMMddHHmmss |
version | String | 是 | api版本,默認為1.0 |
sign | String | 是 | 簽名。先把timestamp用MD5進行加密加上appid對應(yīng)的key,然后再次用MD5再次進行加密生成簽名,所有的MD5加密為大寫。 |
響應(yīng)參數(shù)
字段 | 類型 | 說明 |
---|---|---|
msg | String | 響應(yīng)信息,成功為ok,錯誤為對應(yīng)的錯誤信息 |
code | Int | 響應(yīng)碼,200-成功 201-沒有可用次數(shù) 400-參數(shù)缺失或錯誤 500-異常 |
data | json | 識別結(jié)果數(shù)據(jù) |
返回結(jié)果示例:
{ "msg":"成功", "code":200, "data":{ "cutTongue":"http://tonguecut.oss-cn-beijing.aliyuncs.com/6c12e3d6-1669-11eb-ac43-f990dea5f70f.jpg", "tizhi":{ "xueyu":0.024614405, "shire":0.025916621, "tebing":0.09500812247087398, "yangxu":0.5017460499999999, "yinxu":0.0260680735, "tanshi":0.48473511015, "pinghe":0.019101860029586897, "qiyu":0.08836177221440236, "qixu":0.6264306500000001 }, "tiaoli":{ "tizhi_name":"氣虛體質(zhì)", "changjianbiaoxian":"平素語音低弱,氣短懶言,容易疲乏,精神不振,常自汗出,動則尤甚,肌肉松軟不實。性格內(nèi)向,不喜冒險。", "jingshentiaoyang":"氣虛質(zhì)之人可常常品茶會友,吟詩作畫,垂釣養(yǎng)鳥,培養(yǎng)耐力、毅力和愛心,使人精神上愉悅和享受,增強心肺功能,促進全身氣血和調(diào),益氣增壽。", "fabingqingxiang":"不耐受風、寒、暑、濕邪,易患感冒、各臟器功能不足如心悸、慢性胃炎、慢性支氣管炎等??;病后康復(fù)緩慢。", "yuletiaoshe":"調(diào)養(yǎng)重在初春、初秋,春季需要“春捂”,不僅利于陽氣的生發(fā),而且能抵御寒冷刺激,促進機體免外邪刺激,倒春寒期間不宜進補;秋季虛“防燥”,干燥時需解暑潤津,氣溫低時要注意防寒保暖,且不能過度進補,可先吃清淡、易消化的食物,溫養(yǎng)脾胃,減輕脾胃的負擔;冬季可適量進補。", "sijiyangsheng":"選用較柔緩的方式進行鍛煉,如廣播體操、太極拳、散步、慢跑、按摩四肢或胸腹等。氣功方面,可練“六字訣”中的“吹”功。由于體質(zhì)虛弱,故應(yīng)防止過度運動勞累。", "tiyuduanlian":"動靜結(jié)合、量力而行。可通過運動保持情緒的健康穩(wěn)定,如器械訓練、打球、爬山、跑步、散步、太極拳、健美操等。", "qijutiaoshe":"注意保暖,不要大汗當風,以防感受風寒;勞則氣耗,注意不可過于勞作,以免更傷正氣。", "yinyuetiaoli":"適合多收聽宮音、商音、徵音。如:《陽春白雪》《紫竹調(diào)》《十面埋伏》、《流水》、《陽春》、《長清》、《鶴鳴九皋》、《文王操》等。", "jingluobaojian":"常按足三里穴、氣海穴、關(guān)元穴促進氣血生成,提高人體正氣。", "yongyaijinji":"慎少苦寒攻伐之品", "yaowuyangsheng":"可適量服用玉屏風散提升正氣。", "shiliao":[ "黃芪童子雞。將童子雞1只洗凈,用紗布袋包好生黃芪9克,取一根細線,一端扎緊袋口,置于鍋內(nèi),另一端則綁在鍋柄上。在鍋中加入蔥姜蒜鹽酒等調(diào)料,用文火慢燉1小時,食肉喝湯。有補中益氣,增強機體抗病能力的作用,適用于體質(zhì)虛弱、易患風寒感冒者。", "山藥粥。將山藥30g及粳米180g一起加入鍋中,適量清水煮粥,煮熟即可。具有補中益氣、固肺澀精的作用。", "合適的食物。粳米、小米、黃米、大麥、莜麥、黃豆、白扁豆、豇豆、蠶豆、豌豆、土豆、白薯、山藥、胡蘿卜、香菇、鯽魚、鵪鶉、鵝肉、鴿蛋、鴿肉、羊心、羊肚、蓮子、菱角、猴頭菇、蘑菇、芡實、紅薯、栗子、人參、黃鱔、蝦等。", "少吃的食物。蕎麥、柚子、生蘿卜、柑橘、檳榔、空心菜等。" ], "second_tizhi_name":"陽虛體質(zhì)" }, "char":[ { "type":"深白苔", "probability":"0.96793604" }, { "type":"薄苔", "probability":"0.9984659" }, { "type":"有齒痕", "probability":"0.5031761" }, { "type":"無點刺", "probability":"0.7591451" }, { "type":"裂紋少", "probability":"0.45037863" }, { "type":"膩苔", "probability":"0.8273132" }, { "type":"胖大舌", "probability":"0.6586307" }, { "type":"潤苔", "probability":"0.70896816" }, { "type":"淡紅舌", "probability":"0.5942306" }, { "type":"舌苔不剝", "probability":"0.9999211" } ], "zhengxing":[ { "zhengxing_name":"濕熱熏蒸", "jieshi":"濕熱上乘,是由于脾胃運化功能減弱,造成身體水濕代謝障礙,體內(nèi)濕濁郁而化熱上蒸造成頭昏,惡心,頭重如裹,口干口渴等癥狀", "shiyishiwu":"紅花、山楂、金針菇、草菇、平菇、西米、糯米、黑木耳、甘蔗、酸梅湯、葡萄、百合、水煮花生等", "jinjishiwu":"吸煙、飲酒、忌生冷寒涼、油炸食品、腌制品、咖啡等刺激性食物、茶葉、醬油、蟹蚌、辣椒、胡椒、花椒等", "shiyiyundong":"八段錦、五禽戲、太極拳、易筋經(jīng)、慢跑、室外有氧運動", "jinjiyundong":"激烈運動", "shiyiyaoshan":"紅豆綠豆粥", "shiyiyinyue":" 廣陵散(戴紫茹)" }, { "zhengxing_name":"熱盛傷陰", "jieshi":"是感受四時溫熱病邪所引起的急性熱病,其發(fā)病迅速,熱象偏重,故最易化燥傷陰", "shiyishiwu":"枸杞子、黨參、山藥、龍眼肉、胡蘿卜、蓮藕、豬骨、紅棗、豬肝、橄欖、青菜、粟子、牛肉、雞肉、豇豆、小白菜等", "jinjishiwu":"吸煙、飲酒、忌生冷寒涼、油炸食品、腌制品、咖啡等刺激性食物等", "shiyiyundong":"慢跑、散步、八段錦、五禽戲、太極拳、易筋經(jīng)、室外有氧運動", "jinjiyundong":"激烈運動", "shiyiyaoshan":"竹葉石膏粥", "shiyiyinyue":"陽春白雪傳奇樂坊 " }, { "zhengxing_name":"真陰不足", "jieshi":"陰虛只是引起虛火上炎原因之一,就是說腎水不足,陰包不住陽,虛陽上逆為害", "shiyishiwu":"鈴薯、洋蔥、平菇、藕、粟子、山藥、牛肉、雞肉、豇豆、小白菜、西紅柿、蘋果、香蕉、葡萄、牛肉、羊肉等", "jinjishiwu":"吸煙、飲酒、忌生冷寒涼、油炸食品、腌制品、咖啡等刺激性食物、辣椒等", "shiyiyundong":"八段錦、五禽戲、太極拳、易筋經(jīng)、室外有氧運動", "jinjiyundong":"激烈運動", "shiyiyaoshan":"天花粉粥", "shiyiyinyue":"陽春白雪傳奇樂坊 " }, { "zhengxing_name":"脾虛或氣虛", "jieshi":"脾虛指脾胃虛弱。氣虛的范圍較廣,包括心氣虛,肺氣虛,脾氣虛,肝氣虛,腎氣虛。具體地要根據(jù)實時癥狀辯證病癥", "shiyishiwu":"核桃仁、榴蓮、冬瓜、黑芝麻、 羊腎、牛骨髓、豬腰子、驢肉、烏骨雞、鴨肉、泥鰍、魚肚魚翅、鰻魚", "jinjishiwu":"辣椒、荔枝、巧克力,香蕉、柑橘、土豆、西紅柿、南瓜、茶葉、醬油,魚蝦蟹蚌、啤酒、戒煙戒酒", "shiyiyundong":"散步,八段錦,五禽戲,太極拳,易筋經(jīng),吐吶法", "jinjiyundong":"激烈運動", "shiyiyaoshan":"蚌肉燉老鴨", "shiyiyinyue":"十面埋伏傳奇樂坊" }, { "zhengxing_name":"寒癥或者寒濕癥", "jieshi":"寒證分外肝風寒和內(nèi)寒(是臟腑陽氣不足,主要是腎陽不足所致)。寒濕證,中醫(yī)認為寒濕包括外感寒濕和內(nèi)生寒濕兩個方面。外感寒濕:外感寒濕邪氣,氣血運行受阻。內(nèi)生寒濕:寒濕內(nèi)困而損傷脾陽,或脾腎陽虛而寒濕內(nèi)停", "shiyishiwu":"馬蹄、橄欖、石榴、青菜、芹菜、菠菜、柑橘、烏梅、檸檬、魚肉等", "jinjishiwu":"吸煙、飲酒、忌生冷寒涼、油炸食品、腌制品、咖啡等刺激性食物、茶葉、醬油、蟹蚌、辣椒、胡椒、花椒等", "shiyiyundong":"慢跑、散步、八段錦、五禽戲、太極拳、易筋經(jīng)、室外有氧運動", "jinjiyundong":"激烈運動", "shiyiyaoshan":"生姜羊肉湯", "shiyiyinyue":"紫竹調(diào)(純樂古箏)" } ], "message":"調(diào)用成功" } }
返回參數(shù)說明
返回參數(shù) | 說明 |
---|---|
cutTongue | 切割后的舌頭圖片url路徑 |
tizhi | 九種體質(zhì)對應(yīng)的概率 |
xueyu | 血瘀體質(zhì)對應(yīng)的概率 |
shire | 濕熱體質(zhì)對應(yīng)的概率 |
tebing | 特稟體質(zhì)對應(yīng)的概率 |
yangxu | 陽虛體質(zhì)對應(yīng)的概率 |
yinxu | 陰虛體質(zhì)對應(yīng)的概率 |
tanshi | 痰濕體質(zhì)對應(yīng)的概率 |
pinghe | 平和體質(zhì)對應(yīng)的概率 |
qiyu | 氣郁體質(zhì)對應(yīng)的概率 |
qixu | 氣虛體質(zhì)對應(yīng)的概率 |
tiaoli | 概率最高的體質(zhì)對應(yīng)的調(diào)理建議 |
tizhi_name | 體質(zhì)名稱 |
changjianbiaoxian | 常見表現(xiàn) |
jingshentiaoyang | 精神調(diào)養(yǎng) |
fabingqingxiang | 發(fā)病傾向 |
yuletiaoshe | 娛樂調(diào)攝 |
sijiyangsheng | 四季養(yǎng)生 |
tiyuduanlian | 體育鍛煉 |
qijutiaoshe | 起居調(diào)攝 |
yinyuetiaoli | 音樂調(diào)理 |
jingluobaojian | 經(jīng)絡(luò)保健 |
yongyaojinji | 用藥禁忌 |
shiliao | 兩種具體的藥膳、適合吃的食物和禁忌食物 |
zhengxing | 可能的證型和對應(yīng)的調(diào)理方法 |
zhengxing_name | 證型名稱 |
jieshi | 證型具體的解釋 |
shiyishiwu | 適宜食物 |
jinjishiwu | 禁忌食物 |
shiyiyundong | 適宜運動 |
jinjiyundong | 禁忌運動 |
shiyiyaoshan | 適宜藥膳 |
shiyiyinyue | 適宜音樂 |
message | 返回的各種情況,具體說明如下 |
message參數(shù) | 說明 |
---|---|
圖片路徑有誤 | 原始圖片url路徑有誤 |
圖片質(zhì)量過低 | 拍攝舌頭圖片模糊或無舌頭圖片 |
服務(wù)器繁忙 | 服務(wù)器并發(fā)過高 |
切割圖片失敗 | 舌頭圖片不完整 |
無對應(yīng)證型 | 有舌頭和體質(zhì)相關(guān)結(jié)果,沒有對應(yīng)的證型結(jié)果 |
調(diào)用成功 | 正常返回所有結(jié)果 |
java調(diào)用代碼示例
import com.alibaba.fastjson.JSON; import com.util.HttpClient; import java.io.IOException; import java.security.MessageDigest; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.*; public class DemoObj { public static String MD5(String data) throws Exception { System.out.println(data); MessageDigest md = MessageDigest.getInstance("MD5"); byte[] array = md.digest(data.getBytes("UTF-8")); StringBuilder sb = new StringBuilder(); for (byte item : array) { sb.append(Integer.toHexString((item & 0xFF) | 0x100).substring(1, 3)); } System.out.println(sb.toString().toUpperCase()); return sb.toString().toUpperCase(); } public static void main(String[] args) { DateFormat df = new SimpleDateFormat("yyyyMMddHHmmss"); String timestamp=df.format(new Date()); Mapbody = new HashMap<>(); body.put("appid", "你的APPID"); System.out.println(timestamp); body.put("timestamp", timestamp); body.put("version", "1.0"); body.put("imgpath", "舌頭圖片地址"); try { body.put("sign", MD5(MD5(timestamp)+"你的APPID對應(yīng)的key")); } catch (Exception e) { e.printStackTrace(); } try { String s = new HttpClient().doPostMap("http://mnpc.com.cn/admin/api/tongue_analysis_advance", body); System.out.println(s); Map maps = (Map) JSON.parse(s); for (Object map : maps.entrySet()){ System.out.println(((Map.Entry)map).getKey()+" " + ((Map.Entry)map).getValue()); } } catch (IOException e) { e.printStackTrace(); } } }
python調(diào)用代碼示例
import hashlib # 導(dǎo)入time模塊 import time import requests import json def Md5(res): print(res) md = hashlib.md5() # 構(gòu)造一個md5 md.update(res.encode(encoding='utf-8')) # 加密 print(md.hexdigest().upper()) return md.hexdigest().upper() def testapi(): tures={} restime=time.strftime('%Y%m%d%H%M%S', time.localtime(time.time())) # restime="20190829114035" #傳入?yún)?shù) tures['timestamp']=restime tures['appid']="你的APPID" tures['version']='1.0' tures['imgpath']='https://wxr-tongue.oss-cn-beijing.aliyuncs.com/images/tongue/IMG_20200913_134618.jpg' tures['sign']=Md5(Md5(restime)+"你的APPID對應(yīng)的key") url = "http://mnpc.com.cn/admin/api/tongue_analysis_advance" response = requests.post(url, params=tures) # print(response.text) print(type(response.text)) load=json.loads(response.text) print(load)
C#調(diào)用代碼示例
using Newtonsoft.Json; using System; using System.Collections.Generic; using System.IO; using System.Net; using System.Security.Cryptography; using System.Text; namespace APITest { class Program { static void Main(string[] args) { DictionarymyDictionary = new Dictionary (); DateTime dt = DateTime.Now; string ds = dt.ToString("yyyyMMddHHmmss"); myDictionary.Add("timestamp",ds); myDictionary.Add("appid", "你的APPID"); myDictionary.Add("version","1.0"); myDictionary.Add("imgpath", "待測圖片的云服務(wù)地址"); myDictionary.Add("sign",GetMD5(GetMD5(ds)+ "你的APPID對應(yīng)的key")); string finalresult = Post("http://mnpc.com.cn/admin/api/tongue_analysis_advance",myDictionary); Object jo = JsonConvert.DeserializeObject(finalresult); //此處結(jié)果為最后的調(diào)用結(jié)果 Console.WriteLine(jo); Console.ReadKey(); } //構(gòu)造MD5 public static string GetMD5(string sDataIn) { MD5CryptoServiceProvider md5 = new MD5CryptoServiceProvider(); byte[] bytValue, bytHash; bytValue = System.Text.Encoding.UTF8.GetBytes(sDataIn); bytHash = md5.ComputeHash(bytValue); md5.Clear(); string sTemp = ""; for (int i = 0; i < bytHash.Length; i++) { sTemp += bytHash[i].ToString("X").PadLeft(2, '0'); } return sTemp.ToUpper(); } /// /// 指定Post地址使用Get 方式獲取全部字符串 /// /// 請求后臺地址 ///public static string Post(string url, Dictionary dic) { string result = ""; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; req.ContentType = "application/x-www-form-urlencoded"; #region 添加Post 參數(shù) StringBuilder builder = new StringBuilder(); int i = 0; foreach (var item in dic) { if (i > 0) builder.Append("&"); builder.AppendFormat("{0}={1}", item.Key, item.Value); i++; } byte[] data = Encoding.UTF8.GetBytes(builder.ToString()); req.ContentLength = data.Length; using (Stream reqStream = req.GetRequestStream()) { reqStream.Write(data, 0, data.Length); reqStream.Close(); } #endregion HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); //獲取響應(yīng)內(nèi)容 using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { result = reader.ReadToEnd(); } return result; } } }
javascript調(diào)用代碼示例
$.ajax({ type: "POST", url: "http://mnpc.com.cn/admin/api/tongue_analysis_advance", data: { timestamp:restime, #restime時間格式為YYmmddHHMMSS appid='你的APPID', version='1.0', imgpath='https://wxr-tongue.oss-cn-beijing.aliyuncs.com/images/tongue/IMG_20200913_134618.jpg', sign=Md5(Md5(restime)+'你的APPID對應(yīng)的key') }, success: function(msg) { console.log('返回的數(shù)據(jù):'+msg); } });