2014-11-30 2 views
1

내 웹 사이트에서 Facebook에 로그인하기 위해 버튼을 클릭 할 때이 오류가 발생합니다.Asp.Net 잘못된 포스트 백 또는 콜백 인수.

잘못된 포스트 백 또는 콜백 인수입니다. 이벤트 유효성 검사는 구성 또는 < % @ Page EnableEventValidation = "true"%>를 사용하여 활성화됩니다. 보안상의 이유로이 기능은 포스트 백 또는 콜백 이벤트에 대한 인수가 원래 렌더링 된 서버 컨트롤에서 비롯된 것인지 확인합니다. 데이터가 유효하고 예상되는 경우 유효성 검사를 위해 다시 게시 또는 콜백 데이터를 등록하려면 ClientScriptManager.RegisterForEventValidation 메서드를 사용합니다.

Google에서 검색했을 때이 두 링크가 발견되어서 오류 메시지를 이해할 수 있습니다. 그러나 그들은 문제를 해결하지 못했습니다. 내가 오류를 일으키는 것을 발견 할 때까지

http://blogs.msdn.com/b/amitsh/archive/2007/07/31/why-i-get-invalid-postback-or-callback-argument-errors.aspx

asp.net: Invalid postback or callback argument

그래서 나는 섹션으로 떨어져 페이지 섹션을했다.

은 iframe 이름 = "ContentIFrame"클래스 = "IFrameStyle"

내가 iframe을 삭제

은, 모든 작품 : 그것은이 있었다. 그러나 페이지에 iframe이 필요합니다. 아무도 iframe이이 오류를 일으키는 이유를 도와 줄 수 있습니까? 그것은 포스트 백과는 아무런 관련이 없습니다.

+0

전체 HTML을 iframe에 게시하십시오. – beautifulcoder

+0

iframe에 ID를 추가했는데 작동했습니다. 작동합니다. iframe은 별도의'window' 객체에서 실행되는 코드입니다.

+0

나는 이것이 이것을 고쳤다 고 생각한다. – beautifulcoder

답변

0

이벤트 유효성 검사 (설정 EnableEventValidation=false)를 사용하지 않도록 제안했지만 보안 문제가 발생할 수 있으므로 권장하지 않습니다. 필자의 경우 문제의 해결책은 iframe을 직접 ASPX에 삽입하는 대신 asp:PlaceHolder을 사용하는 것이 었습니다. 그런 다음

<asp:PlaceHolder runat="server" ID="myPlaceholder" /> 

하여 다시 게시 처리기에서 다음 장소 :하여 ASPX에 다음

장소 : 그런 다음 C# 코드에서, 나는 자리의 ControlCollection에 새로운 HtmlIframe 컨트롤을 추가

using System.Web.UI.HtmlControls; 

HtmlIframe newIframe = new HtmlIframe(); 
newIframe.Src = "somewhere/some_page.html"; 
myPlaceholder.Controls.Add(newIframe); 

iframe을 ASPX에 직접 배치하고 HTML 요소를 runat="server"으로 설정하는 방법도 있습니다. runat="server"이 설정되면 src 속성을 설정하기 위해 코드 내에서 컨트롤의 ID에 액세스 할 수 있어야합니다.

관련 문제