2010-07-14 8 views
1

하나의 로컬 asp.net mvc 사이트에서 일부 데이터를 다른 사이트에 게시하려고하지만이를 수행 할 수 없습니다. 나는 사이트에 다음과 같은 게시물을 실행jQuery AJAX POST가 작동하지 않습니다.

// tried this and it didn't work  
//$.post("http://localhost/PlatformPortal/Buyers/Account/SignIn", 
//{sign:authHeader}) 

// Currently trying this     
    $.ajax({ 
      url: "http://localhost/PlatformPortal/Buyers/Account/SignIn", 
      data: authHeader, 
      type: "POST", 
      success: function() { alert('Success!'); } 
      }) 

내가 사이트 B에 대한 AccountController에서 POST "로그인의"액션이 공격 할 수 있지만, 그렇지 않은 기대했다. 그러나 나는 "성공"을 얻는다. 위의 jquery 스 니펫이 연결된 링크를 클릭하여 게시물을 실행할 때 팝업 메시지가 표시됩니다. 내가 놓친 게 있니?

답변

0

$ .ajax()는 XMLHttpRequest를 사용하기 때문에 XHR의 교차 도메인 제한이 적용됩니다.

SiteA와 SiteB는 서로 다른 호스트/포트에 있습니까? 그렇다면 예상되는 동작을 보게됩니다.

+0

안녕하세요. Dave, 나에게 다시와 주셔서 감사합니다. 현재 테스트 목적으로 두 사이트 모두 내 로컬 개발자입니다. 상자 (로컬 호스트). 그래서 이들은 http : // localhost/SiteA와 http : // localhost/SiteB와 같은 것입니다. – Cranialsurge

+0

트래픽을 모니터링하기 위해 Fiddler를 실행하면 SiteB에서 반환 된 것이 있습니까? –

+0

나는 다음 정보와 함께 Fiddler의 서버에서 완벽한 리턴 (200)을 얻습니다. 열린 우리당 - HTTP : //는 PlatformPortal/구매자/계정/로그인 절차는 RequestHeaders 사용자 에이전트/로컬 호스트 : 피들러 호스트 : localhost를 콘텐츠 길이 : 0 데이터 : 일부 테스트 인 "데이터"변수입니다 jQuery 아약스 구문의 POST 본문 또는 헤더? – Cranialsurge

관련 문제