Использование Oracle ORDS RESTful API с C # - PullRequest
0 голосов
/ 16 января 2019

Я получаю ответ ниже при использовании ORDS Oracle RESTful Data сервисов, использующих C #.

{ StatusCode: 405, ReasonPhrase: «Метод не разрешен», Версия: 1.1, Содержание: System.Net.Http.StreamContent, Заголовки: { Длина содержимого: 11402 Тип контента: текст / HTML }}

public void test()
{
    string item_code;

    using(var client = new HttpClient())
    {
        Item items = new Item
        {
            segment1 = "049002932",
            description = "Fine Liner Dollar Pointer Softliner Metal Jacket F 0.3 Black 10's Box",
            short_description = " Pointer F Black 10's Box", service_item = "No", primary_uom_code = "10", inventory_item_status_code = "Inactive"
        };

        client.BaseAddress = new Uri("http://10.132.1.40:8090/");

        var response = client.PutAsJsonAsync("ords/ebsvis1/raz_inv/raz_item/Update/", items).Result;

        if (response.IsSuccessStatusCode)
            Console.Write("Success");
        else
            Console.Write("Error");
    }
}

Вот мое определение RESTful Services:

enter image description here

1 Ответ

0 голосов
/ 16 января 2019

Для вашей службы RESTful на основе ORDS у вас есть обработчик PUT, определенный для вашего модуля raz_inv и вашего ... / Update / template?

На основании вашего скриншота это URI PUT Hander:

/raz_inv/raz_item/update/{item_code}

Но вы делаете PUT на

/raz_inv/raz_item/Update/

Вам необходимо включить код товара в конец URI, так что

var response client.PutAsJsonAsync("ords/ebsvis1/raz_inv/raz_item/Update/049002932",  items).Result;

Просто угадал 049002932 бит ...

...