3
게시물을 다시 볼 수있는 링크가 있습니다.httphandler로 데이터를 보내는 방법
otherOptionsContainer.Controls.Add(new LiteralControl(String.Format("<a href='{0}' onclick='return {1}.exportItems();'>Export</a><br/>", exportURL, this._clientInstanceName)));
과 HTTP 처리기는
byte[] ms_excel = some_params_from_code
MemoryStream ms_excel_tream = new MemoryStream(ms_excel);
context.Response.ContentType = CONTENT_TYPE_MS_EXCEL;
String dateNow=DateTime.Now.ToString("dd-MMM-yyyy_HH_mm", new System.Globalization.CultureInfo("en-US"));
context.Response.AddHeader("Content-Disposition", string.Format("attachment; filename=Export_{0}.xls", dateNow));
ms_excel_tream.WriteTo(context.Response.OutputStream);
ms_excel_tream.Close();
나는 HttpHandler를에 some_params_from_code를 보내야합니다. 나는 몇 가지 제한이있다. 1.이
$.ajax({
url: "_Layouts/blah/blahHandler.ashx",
contentType: "application/json; charset=utf-8",
data: { 'key1':'value1'},
dataType: "json",
success: OnComplete,
error: OnFail
});
같은 Ajax를 사용하여 데이터를 전송하기 위해 나는 노력했다 쿠키
를 사용하지 마십시오 쿼리 문자열 2를 사용하지 않지만 HTTP를 핸들러는 다른 응답 객체를 작성합니다. 또는 다른 컨텍스트가 처리기로 제공됩니다.
여기서'ssome_params_from_code '는 어디에서 온 것입니까? 서버 측? 클라이언트 측에서 json 객체를 전달 했습니까? 그것의 reallty 취소 – YavgenyP
ssome_params_from_code는 서버 측에서 온 것으로되어 있습니다. json을 사용하는 나의 예에서는 서버 측에서 클라이언트 측으로 전달하고 클라이언트 측에서는 json을 사용하여 전달합니다. – Alexandr
그래서 다른 모든 개체와 마찬가지로 서버 측에서 사용하고 있습니다 (쿼리 문자열/쿠키는 여기에 있습니다). db로부터 얻을 수있는 것이 있다면 db 호출로 얻거나 세션 의존 객체 인 경우 세션에서 가져올 수 있습니다.이 변수에 대한 자세한 정보와 정확히 작동하지 않는 것은 무엇입니까? – YavgenyP