티스토리 뷰

프로그래밍/ASP.NET

간단하게 사용하는 JSONP

쇠주는참이슬 2016. 1. 25. 18:46

 

 

ASP.NET  에서 JSONP 사용하기.

 

데이터를 호출하는 도메인과, 반환하는 도메인이 다르면 ajax를 이용할 수가 없다.

허나 아래와같이 JSONP를 이용한다면 사용가능하다.

 

WebAPI를 이용하는 방법과,

그렇지 않은경우 두가지 방법을 간단하게 설명하려고 한다.

 

1. WebAPI 사용 

  -> Global.asax 에 아래 JsonpMediaTypeFormatter 한줄만 추가해주고,

Client 단에서 jsonp로 호출하면된다.

 

var config = GlobalConfiguration.Configuration; config.Formatters.Insert(0, new JsonpMediaTypeFormatter());
$.ajax({     url: 'http://myurl.com',     type: 'GET',     dataType: 'jsonp',     success: function (data) {         alert(data.MyProperty);     } })
 

2. 일반적인 서비스에서 사용시

  ajax 호출시 해당 웹 서비스에 파라미터로 myCallback 이 넘어간다.

  jsonp 의 myCallback 을 함수로 싸서 리턴하면 간단하게 jsonp를 사용할 수 있다.

 

- Client 영역

$.ajax({     url: 'http://myurl.com',     type: 'GET',     dataType: 'jsonp',     jsonp:'myCallback'     success: function (data) {         alert(data.MyProperty);     } })

 

- Server 영역

client 에서 호출한 jsonp myCallback 을 아래와같이 처리해서 넘겨주면 된다.

string response = context.Request.Params["myCallback"];        response += "({'result':'json문자열'})" context.Response.Write(response);

 

조금더 응용하려면 아래 사이트를 참고하면 된다.

http://stove99.tistory.com/10

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함