百度AI身份證識別接口,iOS上傳base64圖片報錯216201問題解決辦法總結

1、首先我們查看百度文檔,此錯誤碼的介紹:

216201 image format error 上傳的圖片格式錯誤,現階段我們支持的圖片格式爲:PNG、JPG、JPEG、BMP,請進行轉碼或更換圖片

2、上傳接口的介紹:

image string - 圖像數據,base64編碼後進行urlencode,要求base64編碼和urlencode後大小不超過4M,最短邊至少15px,最長邊最大4096px,支持jpg/jpeg/png/bmp格式

3、可能的錯誤分析:

①、base64編碼不能插入空格。如果使用iOS系統的方法,建議使用:

        NSString  *base64 = [jpegData base64EncodedStringWithOptions:0];

        關於NSDataBase64EncodingOptions的介紹:

        NSDataBase64Encoding64CharacterLineLength:每64個字符插入\r或\n

        NSDataBase64Encoding76CharacterLineLength:每76個字符插入\r或\n

        NSDataBase64EncodingEndLineWithCarriageReturn:插入字符爲\r

        NSDataBase64EncodingEndLineWithLineFeed:插入字符爲\n

        如果傳0,則不插入任何字符

②、urlencode還是有必要的,如果使用AFNetworking框架,是會自動編碼的,你不需要額外處理。

③、圖片的base64編碼是不包含圖片頭的,如(data:image/jpg;base64,)必須刪掉。

 

實踐經驗總結,有任何疑問歡迎留言。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章