我是MVC的新手,並在MVC上編寫Web應用程序。我正在嘗試發送獲取請求。
我得從我試圖發送一個請求剃刀頁:獲取請求未發送
$(document).ready(function() {
var query = $('#productQuery').val();
alert("Start.");
var uri = 'api/search/products?q=abc';
$.get(uri, function (data) {
alert("Load was performed.");
});
});
而且我有鏈接到其工作絕對沒問題的頁面控制器,這ApiController:
[RoutePrefix("api/search")]
public class SearchController : ApiController
{
[Route("products")]
[HttpGet]
public async Task<IEnumerable<ProductDocument>> searchProducts(
[FromUri(Name = "q")]string query,
[FromUri(Name = "cat")]string[] categories=null)
{
ProductsResponse response = await SolrWebApi.QueryAsync<ProductsResponse>(query);
if (response.Header.Status != 0)
{
throw new HttpResponseException(HttpStatusCode.InternalServerError);
}
return response.Body.Documents.Take(3).ToArray();
}
如果有人能告訴我我做錯了什麼,以及爲什麼我的請求沒有發送,我將不勝感激。
給出路由屬性,你的uri應該是'api/search/products'。您可能希望查看「@ Url.Action」以通過控制器+操作獲取url,而不是硬編碼路由。如果它仍然不起作用,請嘗試不使用'categories'參數(或使用零參數並建立起來)。 –