【问题标题】:Spark Java: POST call not working correctlySpark Java:POST 调用无法正常工作
【发布时间】:2017-06-11 02:05:37
【问题描述】:

问题: POST 的请求参数以请求正文的形式出现,而不是作为请求参数。

我正在使用以下语法调用 Spark Java Web 服务。

http://localhost:8080/submitCustomer?custId#4&Name=Fredj"


Spark Java 告诉我:

请求 IP 0:0:0:0:0:0:0:1 请求动词 POST 收到的请求:custId#4&Name=FredJ (-->Request.body()) 收到的网址:http://localhost:8080/submitCustomer


知道为什么这些变量会作为请求正文的一部分而不是请求参数出现吗?

提前致谢,

【问题讨论】:

  • 如何检查这些参数?使用什么 API 函数?
  • 似乎将参数放入请求正文的 POST 是完全正常的,或者我被告知。过去,我总是使用 getParameter() 类型的方法获取 POST 变量。谢谢,

标签: spark-java


【解决方案1】:

使用request.queryParams(..) API 从路径中检索查询参数。

例子:

对于 URL http://localhost:8080/submitCustomer?abc=123,路径 /submitCustomer 的路由可以这样做:

String val = request.queryParams("abc");
System.out.println(val);

它将打印123

更多详情请见this answer

我只是不确定 URL 中的参数。你写的路径是custId#4&Name=Fredj。你确定不是custId=4&Name=Fredj= 而不是#)?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-09-24
    • 1970-01-01
    • 1970-01-01
    • 2018-09-01
    • 2020-10-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多