2017-06-12 69 views
3

我已經在C#中設置了一個非常簡單的Azure函數來響應HttpTrigger。當我在Microsoft Azure instructions之後的本地運行該功能時,我回來的是一個空的404響應。當我在本地運行Azure功能時,爲什麼會得到404?

我使用Visual Studio 2017 v15.3 Preview並安裝了Azure Function Tools擴展。這是我的Azure的功能代碼:

[FunctionName("Func1")]   
public static async Task<object> Run(
    [HttpTrigger(AuthorizationLevel.Anonymous, WebHookType = "genericJson")] 
    HttpRequestMessage req, 
    TraceWriter log) 
{ 
    return req.CreateResponse(HttpStatusCode.OK); 
} 

當我在本地運行(通過右鍵單擊VS項目中去調試>啓動新的實例),它似乎發動就好了。我的功能被識別並且給出的URL是http://localhost:7071/api/Func1

但是,當我GET或POST到上述URL(將Content-Type頭設置爲「application/json」)時,我得到一個空的404響應。在Azure功能CLI控制檯輸出:

[2017年6月12日下午十二時26分12秒]執行HTTP請求:{

[2017年6月12日下午十二時26分12秒]「的requestId 「: 「ae247ea6-c055-40f5-a09c-40ea207cc785」,

[2017年6月12日下午12點26分12秒] 「方法」: 「GET」,

[2017年6月12日12 :26:12 PM]「uri」:「/ api/Func1」

[06/12/2017 12:26:12 PM]}

[2017年6月12日下午12點26分12秒]執行的HTTP請求:{

[2017年6月12日下午12點26分12秒] 「的requestId」:「ae247ea6-c055-40f5-a09c -40ea207cc785" ,

[2017年6月12日下午12時26分12秒] 「方法」: 「GET」,

[2017年6月12日下午12時26分12秒] 「URI」: 「/ API/FUNC1」,

[2017年6月12日下午12點26分12秒] 「authorizationLevel」: 「匿名」

[2017年6月12日下午12點26分12秒]}

[2017年6月12日下午12點26分十二秒]響應細節:{

[2017年6月12日下午12點26分十二秒] 「的requestId」:「ae247ea6-c055-40f5-a09c -40ea207cc785" ,

[2017年6月12日下午12時26分12秒] 「狀態」: 「NOTFOUND」

[2017年6月12日下午12時26分12秒]}

爲什麼我會得到404以及如何解決這個問題?

回答

4

您需要指定methods參數,例如,

[HttpTrigger(AuthorizationLevel.Anonymous, "GET")] 
相關問題