沃森视觉识别不良要求400

时间:2019-01-18 12:02:37

标签: ibm-watson visual-recognition

我有一个可以在cURL上正常运行的watson实例

curl -X POST -u "apikey:skjfdk" --form "images_file=@newpot.jpg" "https://gateway.watsonplatform.net/visual-recognition/api/v3/classify?version=2018-03-19&&classifier_ids=myclassifier"
{
    "images": [
        {
            "classifiers": [
                {
                    "classifier_id": "myclassifier",
                    "name": "myclassifier",
                    "classes": [
                        {
                            "class": "pot",
                            "score": 0.905
                        }
                    ]
                }
            ],
            "image": "newpot.jpg"
        }
    ],
    "images_processed": 1,
    "custom_classes": 4
}

但是当我通过REST CLIENT或简单的Javascript ajax表单上传访问它时,会出现此错误。可能是什么原因?我确信我不会在请求中添加任何其他标头,因为错误声明如此。附上我的其他客户的屏幕截图

{
    "images": [
        {
            "image": "newpot.jpg",
            "error": {
                "code": 400,
                "description": "Invalid Request: vr.Classifier/classify: INVALID_ARGUMENT: Accept-Language header must be a supported 2 letter ISO 639-1 language code or 5 letter ITEF BPC 47 language code. Received 'en-u-rg-uszzzz'"
            }
        }
    ],
    "images_processed": 1
}

Body of the request

Headers

2 个答案:

答案 0 :(得分:1)

这看起来像Accept-Language标头的特定于语言环境的区域覆盖。必须以某种方式发送它。

检查Postman的控制台;您可能会看到正在发送accept-language标头。您还可以显式包含带有不同值的标头(例如de),以查看是否得到不同的行为。

答案 1 :(得分:1)

就像艾伦(Allen)所写的那样,显然邮递员正在插入默认的语言标头,但是碰巧我们遇到了一个错误地解释了标头的错误。 1月18日(星期五)部署了修复程序。