【问题标题】:WebAPI GET long parameterWebAPI GET 长参数
【发布时间】:2015-05-03 22:21:31
【问题描述】:

当使用 AJAX 通过 WebAPI 调用 GET 方法时,我收到 400 - Bad Request。

我知道这是因为我的网址太长了;我要发送的参数类似于:

1739;1591;2021;74777;629;799;29563;731;27047;34357;1271209;3071;3901;144337;3569;132053;167743;6206491;1411;52207749631773;4907;2456 ; 2851631; 105510347; 1739; 2209; 81733; 2021; 74777; 3514519; 799; 29563; 34357; 1271209; 1614779; 3901; 144337; 183347; 6206491; 7883921; 291705077; 7883921; 291705077; 7883921; 291705077 ; 66317; 2453729; 3116899; 115325263; 2851631; 105510347; 134026657; 4958986309; 2257; 2867; 106079; 2623; 97051; 123281; 4561397; 1037; 38369; 48739; 1803343; 44591; 1649867; 2095777; 77543749; 5063; 187331 ;237961;8804557;217709;8055233;10232323;378595951;86071;31846

我已经阅读了关于使用 POST 的信息,但是由于数据已经存在于服务器上,那么肯定 GET 是唯一且正确的选项吗?

我是否遗漏了一些关于我正在尝试做的事情的基本知识?

【问题讨论】:

    标签: ajax asp.net-web-api get


    【解决方案1】:

    从技术上讲,您也可以通过邮寄(或任何其他方法)检索您的数据。

    一方面你说得对,如果数据已经存在于服务器上,你应该使用 GET 来公开它。但如果标识符太长而无法放入 URL,您只能做两件事:

    • 使用其他方法,您可以将参数放入请求正文(如 POST),然后先查看this answer
    • 想想为什么你的标识符需要那么长

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-27
      • 2013-12-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多