WebAPI C # ASP.Net MVC를 통해 외부 웹 사이트에서 데이터 추출

여자

나는 대부분의 시간을 C # WinForm 및 ASP.Net MVC 비 WebAPI에서 작업하고 있지만 이제는 WebAPI 작업을 수행하고 싶습니다.

저는 실제로 Web API를 처음 접했습니다. 저는 이와 같은 비디오를 몇 주 동안 연습했고 그것을 이해하기 위해 몇 권의 책을 읽었습니다. 나는 또한 HttpWebquest / HttpClient의 .Net 네트워크 프로그래밍에 대한 확실한 배경을 가지고 있지만 몇 주 전에 webapi 책에서 읽을 때까지 WebAPI가 그것을 사용한다는 것을 결코 알지 못했습니다.

다음과 같은 것을 달성하려면 도움이 필요합니다.

웹 사이트 A와 B는 모두 ASP.Net MVC로 개발되었으며 저는 웹 사이트 A의 개발자입니다.

웹 사이트 A (www.mysite.com)

웹 사이트 B ( https://www.cars.com/research/suv/ )

웹 사이트 A는 WebAPI를 통해 웹 사이트 B의 특정 페이지에서 데이터를 추출해야합니다.

웹 사이트 B에서 데이터를 추출 할 페이지가 ( https://www.cars.com/research/suv/ ) 라고 가정하고 해당 페이지에서 모든 것을 추출해야합니다 (이미지 + 제목 + 설명 + 텍스트 + 각 항목에 대한 세부 정보). [차량]) ...

웹 사이트 B의 개발자가 API 엔드 포인트 + ApiSecretKey 및 api 직접 링크 목록을 제공했으며 모든 요청은 GET을 통해 호출되어야한다고 말했습니다.

웹 사이트 B에서 추출한 데이터는 (www.mysite.com/pageVehicule)의 웹 사이트 A에 배치해야합니다.

어떻게해야합니까?

스테판

웹 사이트 B가 WebAPI를 노출한다고 가정하면 두 가지 옵션이 있습니다.

1) MVC 프로젝트의 서버 측에서 데이터를 가져옵니다.

HttpClient이것 에 대한 경험이 있다고 주장하기 때문에 매우 간단합니다 (예시 보류 중).

취해야 할 단계는 다음과 같습니다. 뷰를로드 할 때 :

  • 웹 API를 호출하고 (대부분 컨트롤러에서) 데이터를 가져옵니다.
  • 이 데이터를 뷰 모델에 추가하십시오.
  • 페이지의 데이터 렌더링

예 : 출처 : https://docs.microsoft.com/en-us/aspnet/web-api/overview/advanced/calling-a-web-api-from-a-net-client

참고 : 이것이 최선의 예는 아닙니다.이 접근 방식을 사용할 때 더 많은 조사를 수행하십시오.

static HttpClient client = new HttpClient();
static async Task<Product> GetProductAsync(string path)
{   
    Product product = null;
    HttpResponseMessage response = await client.GetAsync(path);
    if (response.IsSuccessStatusCode)
    {
         var jsonString = await response.Content.ReadAsStringAsync();
         model = JsonConvert.DeserializeObject<YOUROBJECTTYPE>(jsonString);
    }
    return product;
}

여기서 이점 중 하나는 인증이 더 간단하다는 것입니다. 단점은 페이지로드가 느려진다는 것입니다.

2) 데이터 클라이언트 쪽을 가져옵니다. 즉 : 브라우저에서

자바 스크립트를 통해 데이터를 가져올 수 있습니다. jquery또는 다른 프레임 워크 와 함께 . 일반적으로 페이지를 먼저로드 한 다음 데이터를 가져옵니다.

취해야 할 단계는 다음과 같습니다.

  • 자바 스크립트에서 API를 호출하고 데이터를 가져옵니다.
  • 페이지를 조작하여 데이터를 표시합니다. 이것은,에 의해 acieved되고 jquery, react, angular, vue.js, knockout또는 유사한 프레임 워크.

jQuery 예 :

$.ajax({  
    type: 'GET',  
    url: 'api/Employees',  
    dataType: 'json',  
    success: function (data) {  
       //use the data here
 }});

페이지가 빠르게로드됩니다. 페이지가로드 된 후 api에 대한 호출이 이루어집니다. 따라서 페이지는 백그라운드에서 데이터를로드하는 동안 반응합니다.

여기서 단점은 인증이 필요한 경우 클라이언트 측 (예 : javascript)에 자격 증명을 저장할 수 없으므로 더 나은 인증 흐름이 필요하다는 것입니다. 아마도 쿠키 또는 jwt 토큰 일 것입니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

ASP .NET WebAPI를 통해 데이터를 가져 오는 iOS 앱

분류에서Dev

asp.net C #을 사용하여 API를 통해 PHP 웹 사이트를 호출하는 방법

분류에서Dev

C # ASP.Net의 웹 페이지를 통해 TSQLScripts 실행

분류에서Dev

ASP .Net MVC에서 ActioResult를 통해 사용자를 외부 사이트의 응답으로 리디렉션하는 방법은 무엇입니까?

분류에서Dev

ASP.NET MVC 응용 프로그램에 외부 SQL Server 데이터베이스를 추가하는 방법 (C #)

분류에서Dev

Asp.net mvc를 사용하여 iframe에서 외부 웹 사이트로 리디렉션 할 수 없습니다.

분류에서Dev

외부 웹 사이트에서 이미지 추출

분류에서Dev

ASP.NET WebAPI ApiController에서 ASP.NET MVC 컨트롤러로 데이터를 어떻게 전달합니까?

분류에서Dev

데이터베이스에서 asp.net 웹 사이트에 부트 스트랩 navbar 채우기

분류에서Dev

ASP.Net 웹 양식에서 RazorPDF 사용 (MVC 외부)

분류에서Dev

웹 페이지에서 reCaptcha를 추출하여 cURL을 통해 외부에서 완료 한 다음 결과를보기 페이지로 반환

분류에서Dev

asp.net webapi mvc의 여러 데이터베이스에서 데이터를 가져 오는 방법

분류에서Dev

asp.net 웹 API에서 데이터를 사용하기위한 asp.net MVC 디자인 패턴

분류에서Dev

Asp .Net MVC5에서 Iframe이 웹 사이트를 표시하지 않음

분류에서Dev

스크래피가 웹 사이트에서 일부 데이터를 추출 할 수 없음

분류에서Dev

전역 서버에 ASP.NET C # 웹 사이트를 게시하는 방법

분류에서Dev

SQL Server 2005 asp.net C # 웹 사이트에 데이터 저장

분류에서Dev

ASP.net MVC6 웹 사이트에서 Office Interop 사용

분류에서Dev

asp.net C #에서 루프를 통해 데이터 테이블을 채우는 방법

분류에서Dev

mvc4 웹 사이트를 asp.net 서버로 전송

분류에서Dev

외부 asp.net 애플리케이션에서 Dynamics AX 웹 서비스를 사용하는 방법

분류에서Dev

RSelenium을 사용하여 for 루프를 통해 .asp 웹 페이지에서 테이블 데이터 수집

분류에서Dev

asp.net 웹 사이트를 PC에서 서버로 이동

분류에서Dev

ftp를 통해 외부 서버 (웹 사이트)에 연결된 디렉토리 생성

분류에서Dev

OData 패치로 asp.net mvc 웹 API 부분 업데이트

분류에서Dev

웹 클라우드 서비스에서 도움 받기 (asp.net mvc 사이트에서 호출)

분류에서Dev

ASP.Net MVC : 추출 및 자동 데이터 매핑 방법

분류에서Dev

외부 웹 사이트에서 특정 div 콘텐츠를 추출하는 방법은 무엇입니까?

분류에서Dev

asp.net C # 웹 페이지를 통해 USB 장치를 감지하고 싶습니다.

Related 관련 기사

  1. 1

    ASP .NET WebAPI를 통해 데이터를 가져 오는 iOS 앱

  2. 2

    asp.net C #을 사용하여 API를 통해 PHP 웹 사이트를 호출하는 방법

  3. 3

    C # ASP.Net의 웹 페이지를 통해 TSQLScripts 실행

  4. 4

    ASP .Net MVC에서 ActioResult를 통해 사용자를 외부 사이트의 응답으로 리디렉션하는 방법은 무엇입니까?

  5. 5

    ASP.NET MVC 응용 프로그램에 외부 SQL Server 데이터베이스를 추가하는 방법 (C #)

  6. 6

    Asp.net mvc를 사용하여 iframe에서 외부 웹 사이트로 리디렉션 할 수 없습니다.

  7. 7

    외부 웹 사이트에서 이미지 추출

  8. 8

    ASP.NET WebAPI ApiController에서 ASP.NET MVC 컨트롤러로 데이터를 어떻게 전달합니까?

  9. 9

    데이터베이스에서 asp.net 웹 사이트에 부트 스트랩 navbar 채우기

  10. 10

    ASP.Net 웹 양식에서 RazorPDF 사용 (MVC 외부)

  11. 11

    웹 페이지에서 reCaptcha를 추출하여 cURL을 통해 외부에서 완료 한 다음 결과를보기 페이지로 반환

  12. 12

    asp.net webapi mvc의 여러 데이터베이스에서 데이터를 가져 오는 방법

  13. 13

    asp.net 웹 API에서 데이터를 사용하기위한 asp.net MVC 디자인 패턴

  14. 14

    Asp .Net MVC5에서 Iframe이 웹 사이트를 표시하지 않음

  15. 15

    스크래피가 웹 사이트에서 일부 데이터를 추출 할 수 없음

  16. 16

    전역 서버에 ASP.NET C # 웹 사이트를 게시하는 방법

  17. 17

    SQL Server 2005 asp.net C # 웹 사이트에 데이터 저장

  18. 18

    ASP.net MVC6 웹 사이트에서 Office Interop 사용

  19. 19

    asp.net C #에서 루프를 통해 데이터 테이블을 채우는 방법

  20. 20

    mvc4 웹 사이트를 asp.net 서버로 전송

  21. 21

    외부 asp.net 애플리케이션에서 Dynamics AX 웹 서비스를 사용하는 방법

  22. 22

    RSelenium을 사용하여 for 루프를 통해 .asp 웹 페이지에서 테이블 데이터 수집

  23. 23

    asp.net 웹 사이트를 PC에서 서버로 이동

  24. 24

    ftp를 통해 외부 서버 (웹 사이트)에 연결된 디렉토리 생성

  25. 25

    OData 패치로 asp.net mvc 웹 API 부분 업데이트

  26. 26

    웹 클라우드 서비스에서 도움 받기 (asp.net mvc 사이트에서 호출)

  27. 27

    ASP.Net MVC : 추출 및 자동 데이터 매핑 방법

  28. 28

    외부 웹 사이트에서 특정 div 콘텐츠를 추출하는 방법은 무엇입니까?

  29. 29

    asp.net C # 웹 페이지를 통해 USB 장치를 감지하고 싶습니다.

뜨겁다태그

보관