RestSharp 간단한 전체 예제 [닫힌]


95

RestSharp를 사용하여 Rest API를 호출하는 간단한 프로토 타입 웹 애플리케이션을 만들려고했습니다.

좋은 예를 하나도 찾지 못했습니다. 누구든지 올바른 리소스를 공유하고 안내해 주시겠습니까? 나는 이미 다음을 살펴 보았고 내가 찾고있는 것을 제공하지 않습니다.

http://restsharp.org/ (예제를 포함한 전체 응용 프로그램이 없음)

http://www.stum.de/2009/12/22/using-restsharp-to-consume-restful-web-services/ (오래된 것 같습니다)

프로토 타이핑하는 동안 아래 코드에 대해 아래 오류가 발생합니다.

RestResponse response = client.Execute(request);

*Cannot implicitly convert type 'IRestResponse' to 'RestResponse'. An explicit conversion exists (are you missing a cast?)  *

twillio 사용 HttpClient를도 restsharp 같은 @JohnSheehan 외모
— tatigo

답변:


21

RestSharp를 구현하는 오픈 소스 프로젝트로 연결되는 주제에 대한 블로그 게시물을 찾았습니다. 도움이 되었기를 바랍니다.

http://dkdevelopment.net/2010/05/18/dropbox-api-and-restsharp-for-ac-developer/ 블로그 게시물은 2 분의 1이며 프로젝트는 여기 : https://github.com/ dkarzon / DropNet

작동하지 않는 것에 대한 완전한 예가 있다면 도움이 될 수 있습니다. 코드를 제공하지 않으면 클라이언트 설정 방법에 대한 컨텍스트를 얻기가 어렵습니다.


안녕하세요 @pmms, 기본적으로 여기 stum.de/2009/12/22 / ... 의 코드를 따르려고 노력하고 있지만 위의 원래 질문에서 설명한 오류가 발생합니다.
— Nil Pun 2012

죄송합니다. 회사 네트워크 내부에서는 연결할 수 없습니다. 나중에 살펴 보겠습니다.
— pms1969

7
좋습니다. 예를 보면 "var"를 사용하고 RestResponse를 사용하고 있습니다. "var"또는 IRestResponse를 사용해보십시오. 그들은 또한 일반 실행을 사용하고 있습니다.
— pms1969

드디어 괜찮은 예, 건배!

현재로서는 링크 전용 답변입니다.
— Alex

133

Pawel Sawicz .NET 블로그 에는 라이브러리 호출 방법을 설명하는 정말 좋은 설명과 예제 코드가 있습니다.

가져 오기:

var client = new RestClient("192.168.0.1");
var request = new RestRequest("api/item/", Method.GET);
var queryResult = client.Execute<List<Items>>(request).Data;

게시하다:

var client = new RestClient("http://192.168.0.1");
var request = new RestRequest("api/item/", Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddBody(new Item
{
ItemName = someName,
Price = 19.99
});
client.Execute(request);

지우다:

var item = new Item(){//body};
var client = new RestClient("http://192.168.0.1");
var request = new RestRequest("api/item/{id}", Method.DELETE);
request.AddParameter("id", idItem);

client.Execute(request)

RestSharp GitHub의 페이지는 페이지 아래로 아주 철저한 샘플 반이있다. 시작하려면 프로젝트에 RestSharp NuGet 패키지를 설치 한 다음 코드에 필요한 네임 스페이스 참조를 포함하면 위의 코드가 작동해야합니다 (전체 예제 응용 프로그램의 필요성이 무효화 될 수 있음).

NuGet RestSharp


1
이 매개 변수와 헤더가 없습니다
— 크리스티나 렉스

첫 번째 GET 예제가 작동하지 않습니다.The type or namespace name 'List<>' could not be found The type or namespace name 'Items' could not be found
— Alex G

26

바꾸다

RestResponse response = client.Execute(request);

에

IRestResponse response = client.Execute(request);

나를 위해 일했습니다.


3
또는var response = client.Execute(request) as RestResponse;
— JohnTube

1
Google 검색을 통해 여기에 도착하는 사람을 허용합니다. IRestResponse로 변경하면 입력 된 호출에도 도움이됩니다. IRestResponse <DummyData> typedResponse = client.Execute <DummyData> (request); 예상대로 작동하지만 RestResponse <DummyData> typedResponse = client.Execute <DummyData> (request); 하지 않습니다.
— mahonya

반환되는 항목에 따라 다릅니다. 내 경우에는, 예를 들어 내가 사용하고 response.Data 내가이 일을 해요 때문에 var response = Client.Execute<List<Skill>>(request); 나는 그 대가로 return response.Data; 나에게 그래서 명시했다 경우는 것 때문에 실제로 이미 VAR와 IRestResponse을 사용하고 IRestResponse<List<Skill>>그렇지 않으면 대답이 올바른지 - 응답을! 단지 코멘트를 추가
— 톰 Stickel
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.