Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Ajax如何从webAPI URL隐藏参数和值?_C#_Ajax_Api - Fatal编程技术网

C# Ajax如何从webAPI URL隐藏参数和值?

C# Ajax如何从webAPI URL隐藏参数和值?,c#,ajax,api,C#,Ajax,Api,我记得我在某个地方读到过,当通过ajax向API提交参数值时,有一个选项使它们不会显示在URL中。我尝试将它们放入数据中如下: $.ajax({ type: "GET", url: "/api/myController/myLunch", contentType: "application/json; charset=utf-8", dataType: "json", data: {"tableID":111, "firstCourse": "soup", ... }, /

我记得我在某个地方读到过,当通过ajax向API提交参数值时,有一个选项使它们不会显示在URL中。我尝试将它们放入
数据中
如下:

$.ajax({
  type: "GET",
  url: "/api/myController/myLunch",
  contentType: "application/json; charset=utf-8",
  dataType: "json",
  data: {"tableID":111, "firstCourse": "soup", ... },  // show up in header but not working
  header: {"tableID":111, "firstCourse": "soup", ... },  // neither
   success: function (data) { ... }
});
控制器获取方法:

[HttpGet]
[Route("myLunch")]
public IHttpActionResult myLunch(int tableID, string firstCourse, ...)
{ ... }
我一直拿404回来。基本上我不想看到这样的情况:

/api/myController/myLunch?tableID=111&firstCourse=soup
我只想看看

/api/myController/myLunch

可以使用POST方法从URL隐藏参数。实际上,GET和POST方法之间的主要区别是GET在URL中显示参数,而POST在URL中隐藏参数。同时,您可以使用两者发布数据。

请标记您的问题,以便更好地理解。什么语言/框架,
jQuery
C#
?您的意思是“显示”,我认为如果您使用
ajax
它无论如何都不会显示在地址栏中,您是否尝试只使用header而不提供数据参数?如果您想手动处理方法参数,这个链接可能有助于OP提到ajax请求。