返回“ip not in whitelist”/“app_name not exist”错误是什么原因?
调用数据上报接口的服务器ip不在白名单里。设置IP白名单,请参考文档:设置IP白名单。
返回“invalid appid”错误是什么原因?
原因可能是:
(1)上报的appid有误。
(2)数据放在请求的body中上报,但是http请求的header中,Content-Type不是“application/json”。
(3)上报的数据有异常,导致json解析失败,请尝试能否成功解析上报的json字符串。
返回“table content element should be dict”错误是什么原因?
上报的table_content的值有问题。table_content要求上报的是一个列表(list)的JSON字符串,列表的每一个元素要求是词典(dict)结构,存放需要上报的字段和值。例如:
1 2 3 4 5 |
table_content=[ {"cmd":"add", "fields": { "itemid": "28394556", "cateid": "9_2_1", "score": 459, "title": "天穿修炼记最新版", "item_tags": "修仙"}}, {"cmd":"add", "fields": { "itemid": "28394557", "cateid": "9_2_1", "score": 434, "title": "比利林恩的中场战事", "item_tags": "战争"}} ] |
返回“table_content cannot be json load ”错误是什么原因?
上报的table_content json字符串中含有异常字符,导致json解析失败,通常是数据中含有英文分号“;”,但数据没有经过url encode。建议直接使用数据上报接口文档 最后的代码进行上报。
返回“table not found”错误是什么原因?
上报数据中的table_name不合法,要求必须是指定的取值,详见数据上报接口文档。
返回“table content not found”错误是什么原因?
原因可能有3个:
(1)提交的数据没有table_content字段。
(2)table_content格式不符合要求:table_content是一个列表(list)的JSON字符串。列表的每一个元素是一个词典(dict)格式的数据包,每个数据包必须包含“cmd”和“fields”两个字段。
(3)提交的table_content字段值有异常,导致json decode失败,请检查提交的table_content数据能否成功json decode。
返回“invalid content”错误是什么原因?
上报的数据记录缺少“cmd”或者“fields”字段。
数据上报http请求支持哪些Content-Type?
数据上报http请求必须以POST方式提交,必须是UTF8编码,Content-Type必须是“multipart/form-data”或者“application/json”。
(1)如果以“Content-Type: multipart/form-data”方式提交,数据需按照 key1=val1&key2=val2 的方式进行编码,val 需要进行 URL 转码,同时key为“table_content”字段的value需要进行json_encode。
(2)如果以“Content-Type: application/json”方式提交,需将所有数据放在一个json字典里并做json encode。
是否支持批量数据上报?
支持,table_content要求上报的是一个列表(list)的JSON字符串,列表的每一个元素是一条要上报的数据的词典。
上报数据后返回WARN 是什么问题?
返回“OK”是上报成功;返回“FAIL”是上报失败;返回“WARN”是警告的意思,数据中存在一些格式问题,但是数据是上报成功的,达观可以收到数据,所以,不必重复上报。
返回“should have one of userid, imei or cid”错误是什么原因?
userid、imei、cid必须要传一个,正常情况下,应该是能获取几个id就传几个id,上报数据中的用户信息需和请求url中用户信息保持一致。
返回“action time too old”错误是什么原因?
行为时间太老了,只需上报7天内的行为数据即可。