3.postback이란 무엇인가
7872 단어 post
웹 개발을 할 때 이것은 매우 중요하다. 사용자가 처음 불러올 때postback이 아니라 사용자가 같은 웹 페이지를 서버에 제출할 때postback이다.
우리는 다음과 같은 테스트 프로그램을 만들고, 먼저 폼이 있는 폼을 만들고, 그 안에textbox와submit 단추를 넣는다.단추를 눌렀을 때 textbox의 값을 서버에 전송하는 프로그램으로 처리합니다. 서버는 처음 불러올지 다시 사용자에게 제출할지에 따라 당연히 서버는 이 템플릿을 되돌려줍니다.
주의 모듈은 웹 페이지를 열 때 이 프로세서의 웹 주소를 직접 열면 템플릿을 불러오고 템플릿에서 되돌아오는 정보에 따라 클라이언트에게 같은 페이지처럼 제출됩니다.
1.거푸집
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title></title>
</head>
<form action="HandlerHello1.ashx" method="post">
<body>
<input type="hidden" name="ispostback" value="true" />
:<input type="text" name="UserName" value="@value" />
<br />
<input type="submit" name="vvv" value=" " />
<br />
@msg
</body>
</form>
</html>
왜hidden 요소를 사용하는지는postback인지 확인하기 위해서name 속성을 가진 요소만 서버에 제출할 수 있습니다.HandlerHello1에서 직접 가져오기 때문에 처음 로드할 때 이러한 요소는 커밋되지 않습니다.ashx가 불러옵니다. 이 때hidden의value는 존재하지 않습니다.사용자가 제출할 때 이 값을 전달합니다. 이 때 서버는postback이라는 것을 알게 됩니다.2. 서버 구축
<%@ WebHandler Language="C#" Class="HandlerHello1" %>
using System;
using System.Web;
public class HandlerHello1 : IHttpHandler {
public void ProcessRequest (HttpContext context) {
context.Response.ContentType = "text/html";
string postback = context.Request["ispostback"];
string username=context.Request["UserName"];
string msg="";
if(postback=="true")
{
context.Response.Write(" ");
msg=" :"+username;
}else
{
context.Response.Write(" ");
username = "";
@msg="";
}
string s=context.Request["vvv"];
if (!string.IsNullOrEmpty(s))
{
@msg=s;
}
// hello1.html
string constr = System.IO.File.ReadAllText(context.Server.MapPath("Hello1.htm"));
constr=constr.Replace("@value", username); //
constr = constr.Replace("@msg",msg); // @msg
context.Response.Write(constr);
}
public bool IsReusable {
get {
return false;
}
}
}
교체된 내용은 사용자의 웹 페이지가 움직이지 않은 것 같다.사실은 서비스 측이 또 완전한copy를 제출했다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
프론트에서 Contentful으로의 POST 요청 방법이 문서를 보더라도 이해하기 어려웠기 때문에 요약JAMStack으로 서비스를 만들고 싶었고, 전부터 신경이 쓰인 헤드리스 CMS Contentful을 사용해 보았습니다. 브라우저에서 게시하는 것은 쉽지만 프런트에서 Contentful으로 POST 요청을하는 방법이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.