Это вызывающая функция:
Код: Выделить всё
public async Task CreateOrderAsync(PaymentOrderRequest request)
{
var response = await _httpClient.PostAsJsonAsync("api/CreateOrder", request).ConfigureAwait(false);
response.EnsureSuccessStatusCode();
return await response.Content.ReadFromJsonAsync();
}
Код: Выделить всё
[Function("CreateOrder")]
public async Task CreateOrderAsync(
[HttpTrigger(AuthorizationLevel.Anonymous, "post", Route = null)] HttpRequestData req)
{
_logger.LogInformation("Create Order");
// Read request body
string requestBody = await new StreamReader(req.Body).ReadToEndAsync().ConfigureAwait(false);
var orderRequest = JsonConvert.DeserializeObject
(requestBody);
// ... etc
}
Код состояния ответа не указывает на успех: 405 (Метод не разрешен)
"Метод: POST, RequestUri: 'http://localhost:5047/api/CreateOrder', Версия: 1.1, содержимое: System.Net.Http.Json.JsonContent, заголовки:
{
Кодирование передачи: фрагментированное
Тип контента: application/json; charset=utf-8
}"
Все поисковые запросы в Google указывают на то, что вызов функции PostAsJsonAsync завершается неудачей, поскольку метод httptrigger не включает «post». Но это ДЕЛАЕТ.
Есть идеи относительно того, что происходит?
Дальнейшая предыстория: изначально вызов осуществлялся со страницы WebAssembly в приложение SSR. Я пытаюсь заставить все это работать только в SSR, из соображений безопасности.
Подробнее здесь: https://stackoverflow.com/questions/798 ... ure-http-t
Мобильная версия