代码之家  ›  专栏  ›  技术社区  ›  Sai Prasad

不支持json格式来自azure存储rest api的异常

  •  0
  • Sai Prasad  · 技术社区  · 7 年前

    我正在azure存储表上处理rest api调用,我成功地查询了表并获得了xml格式的响应,但是当我尝试将accept头更改为json时,我得到了异常。

    注:我将x-ms-version的值设置为2018-03-28

        headers.put("Authorization", "SharedKey " + store + ":" + hash);
        headers.put("x-ms-date", date);
    //        headers.put("x-ms-version","2009-09-19");
        headers.put("x-ms-version","2018-03-28");
        headers.put("Accept-Charset","UTF-8");
    //        headers.put("Accept","application/atom+xml,application/xml");
        headers.put("Accept","application/json;odata=nometadata");
        headers.put("DataServiceVersion","1.0;NetFx");
        headers.put("MaxDataServiceVersion","1.0;NetFx");
    

    我收到响应状态代码415,消息为“ JsonFormatNotSupported 不支持JSON格式。“

    2 回复  |  直到 7 年前
        1
  •  2
  •   Jerry Liu Phantom    7 年前

    DataServiceVersion MaxDataServiceVersion 不是必须的,但是如果你想用的话,把它们改成 3.0;NetFx 是的。

    只有3.0与x-ms-version兼容 2013-08-15 or later 是的。见 document 是的。

        2
  •  1
  •   Sai Prasad    7 年前

    我已经删除了下面两个标题,现在得到的是json格式的响应。

        headers.put("DataServiceVersion","1.0;NetFx");
        headers.put("MaxDataServiceVersion","1.0;NetFx");