인터넷에는 ASP 암호화 문자용 MD5가 많이 있으며 매우 일반적이지만 ASP 언어 자체의 제한으로 인해 파일용 MD5는 실제로 매우 드뭅니다. 우리는 문자열의 md5가 데이터 저장 또는 전송의 보안을 보장하기 위해 일반 텍스트를 되돌릴 수 없게 암호화할 수 있다는 것을 알고 있습니다. 마찬가지로, 파일의 md5 암호화는 네트워크 전송 중에 파일이 수정 및 확인되지 않도록 하는 데에도 사용됩니다. 또 다른 용도는 개인 사이트에서 업로드된 사진이나 파일이 고유한지 확인할 수 있습니다. 원칙은 서버에 업로드한 후 업로드된 파일의 md5 값이 동시에 데이터베이스에 기록된다는 것입니다. 이렇게 하면 다음에 동일한 파일이 업로드될 때 데이터베이스에 쿼리하여 있는지 확인할 수 있습니다. md5 값이 동일하면 동일한 것으로 간주합니다. 파일의 경우, 실제로 Baidu에서도 이 영역에 응용 프로그램이 있습니다. Baidu에 있는 사진의 경우 사진을 클릭하면 "이 사진을 보려면 다음 링크를 클릭할 수도 있습니다: XXX URL" 원칙은 파일 md5와 동일합니다.
더 이상 고민하지 말고 시작해 보겠습니다.
1. asp는 xml 대화형 모드를 통해 .Net 프로그램을 호출하여 md5 파일을 구현합니다.
자체 언어의 제한으로 인해 asp는 파일의 md5를 구현할 수 없지만 .net에서는 실제로 수행할 수 있습니다. .net을 통해 파일에 대해 md5를 수행한 다음 정보를 asp로 보내서 수신할 수 있습니까? ASP의 md5를 얻을 수 있습니까? 답변 확실합니다. 여기에는 ASP와 .NET 프로그램 간의 상호 작용이 포함됩니다. 이전에 "ASP 처리 XML 데이터 전송 및 수신 클래스"라는 ASP 클래스를 작성한 적이 있습니다. 내 Baidu 공간( http://hi.baidu.com/manbutianmi) 에서 볼 수 있습니다. /blog/item/dec182fc6db36587b801a0f6.html은 xml 데이터를 주고받는 ASP 처리에 관한 내용으로, 다양한 이기종 시스템 간의 API 인터페이스 간 통신에 사용할 수 있습니다. 이 글은 이 클래스를 적용한 것입니다. 코드는 다음과 같습니다:
asp 측 코드
xmlcls.asp
<%
Rem은 xml 데이터의 클래스 전송 및 수신을 처리합니다.
'------------------------------------------------ -
'이 저작권 정보는 재인쇄 시에도 유지되어야 합니다.
작가 : 워크맨
'웹사이트: 모바일 테마 네트워크: http://www.shouji138.com
'버전: ver1.0
'------------------------------------------------ -
ClassXmlClass
Rem 변수 정의
비공개 XmlDoc,XmlHttp
개인 메시지 코드, SysKey, XmlPath
비공개 m_GetXmlDoc,m_url
비공개 m_XmlDocAccept
Rem 초기화
비공개 하위 클래스_Initialize()
오류 발생 시 다음 재개
메시지코드 = ""
XmlPath = ""
XmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0") 설정
XmlDoc.ASYNC = 거짓
서브 끝
렘은 물체를 파괴한다
비공개 하위 클래스_Terminate()
IsObject(XmlDoc)인 경우 XmlDoc = Nothing으로 설정
IsObject(m_XmlDocAccept)인 경우 m_XmlDocAccept = Nothing으로 설정합니다.
IsObject(m_GetXmlDoc)인 경우 m_GetXmlDoc = Nothing으로 설정합니다.
서브 끝
'공개 속성 정의가 시작됩니다---------------
렘 오류 메시지
공용 속성 메시지 가져오기()
메시지 = 메시지코드
끝 속성
XML을 보낼 주소를 Rem으로 보내세요.
공공 재산 Let URL(str)
m_url = 문자열
끝 속성
'공개 속성 정의 끝---------------
'프라이빗 프로세스 및 메소드 시작----------------------------
렘 로드 XML
개인 하위 LoadXmlData()
XmlPath <> ""인 경우
XmlDoc.Load(XmlPath)가 아닌 경우
XmlDoc.LoadXml "<?xml 버전=""1.0"" 인코딩=""gb2312""?><root/>"
종료 조건
또 다른
XmlDoc.LoadXml "<?xml 버전=""1.0"" 인코딩=""gb2312""?><root/>"
종료 조건
End Sub
Rem 문자 변환
개인 함수 AnsiToUnicode(ByVal str)
Dim i, j, c, i1, i2, u, fs, f, p
AnsiToUnicode = ""
피 = ""
i = 1에서 Len(str)으로
c = 중간(str, i, 1)
j = 오름차순(c)
j < 0이면
j = j + 65536
종료 조건
j >= 0이고 j <= 128이면
p = "c"이면
AnsiToUnicode = " " & AnsiToUnicode
p = "e"
종료 조건
AnsiToUnicode = AnsiToUnicode & c
또 다른
p = "e"이면
AnsiToUnicode = AnsiToUnicode & " "
p = "c"
종료 조건
AnsiToUnicode = AnsiToUnicode & ("&#" & j & ";")
종료 조건
다음
기능 종료
Rem 문자 변환
개인 함수 strAnsi2Unicode(asContents)
희미한 len1,i,varchar,varasc
strAnsi2Unicode = ""
len1=LenB(컨텐츠로)
len1=0이면 함수 종료
i=1 ~ len1의 경우
varchar=MidB(asContents,i,1)
varasc=AscB(변수 문자)
varasc > 127이면
MidB(asContents,i+1,1)<>"" 그러면
strAnsi2Unicode = strAnsi2Unicode & chr(ascw(midb(asContents,i+1,1) & varchar))
종료 조건
나=나+1
또 다른
strAnsi2Unicode = strAnsi2Unicode & Chr(varasc)
종료 조건
다음
기능 종료
Rem은 파일에 문자를 추가합니다.
Private Sub WriteStringToFile(파일 이름,str)
오류 발생 시 다음 재개
희미한 fs,ts
fs= createobject("script_ing.filesystemobject") 설정
IsObject(fs)가 아니면 Sub를 종료합니다.
ts=fs.OpenTextFile(Server.MapPath(파일 이름),8,True) 설정
ts.writeline(str)
ts.닫기
ts=아무것도 설정하지 않음
fs=아무것도 설정하지 않음
서브 끝
'프라이빗 프로세스 및 메소드 종료-------------
'공개 메소드 시작--www.devdao.com------------
''''''''''' 시작하려면 xml 부분을 보내세요.
Rem은 외부 XML 파일에서 XmlDoc 개체를 채웁니다.
공용 하위 LoadXmlFromFile(경로)
XmlPath = Server.MapPath(경로)
로드Xml데이터()
서브 끝
Rem은 XmlDoc 객체를 문자열로 채웁니다.
공용 하위 LoadXmlFromString(str)
XmlDoc.LoadXml 문자열
서브 끝
Rem은 NodeValue "appID",AppID,1,False와 같은 노드 매개변수를 설정합니다.
'------------------------------------------------ -
'매개변수:
'NodeName 노드 이름
'NodeText 값
'NodeType 저장 유형 [text=0,cdata=1]
'bln인코딩 여부 [true, false]
'------------------------------------------------ -
공용 하위 노드값(Byval NodeName,Byval NodeText,Byval NodeType,Byval blnEncode)
희미한 하위 노드, CreateCDATASection
NodeName = Lcase(노드이름)
XmlDoc.documentElement.selectSingleNode(NodeName)이 아무것도 아닌 경우
ChildNode 설정 = XmlDoc.documentElement.appendChild(XmlDoc.createNode(1,NodeName,""))
또 다른
ChildNode = XmlDoc.documentElement.selectSingleNode(NodeName) 설정
종료 조건
blnEncode = True이면
NodeText = AnsiToUnicode(NodeText)
종료 조건
NodeType = 1이면
ChildNode.Text = ""
CreateCDATASection = XmlDoc.createCDATASection(Replace(NodeText,"]]>","]]>")) 설정
ChildNode.appendChild(createCDATASection)
또 다른
ChildNode.Text = NodeText
종료 조건
서브 끝
'------------------------------------------------ -
'전송된 패킷 XML에서 노드 값을 가져옵니다.
'매개변수:
'Str 노드 이름
'------------------------------------------------ -
공용 속성 GetXmlNode(ByvalStr)
XmlDoc.documentElement.selectSingleNode(Str)가 아무것도 아닌 경우
XmlNode = "널"
또 다른
XmlNode = XmlDoc.documentElement.selectSingleNode(Str).text
종료 조건
끝 속성
'--------------------- -- ---
'반환된 XML 데이터 객체를 가져옵니다.
'예:
'GetXmlData가 NULL이 아닌 경우 GetXmlData는 XML 객체입니다.
'------------------------------------------------ -
공용 속성 GetXmlData() 가져오기
GetXmlData = m_GetXmlDoc 설정
끝 속성
'------------------------------------------------ -
'XML 패키지 보내기
'------------------------------------------------ -
공개 하위 SendHttpData()
Dim i,GetXmlDoc,LoadAppid
Xmlhttp = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0") 설정
Set GetXmlDoc = Server.CreateObject("msxml2.FreeThreadedDOMDocument.3.0") ' xml 패키지 반환
XmlHttp.Open "POST", m_url, false
XmlHttp.SetRequestHeader "콘텐츠 유형", "텍스트/xml"
XmlHttp.XmlDoc 보내기
'Response.Write strAnsi2Unicode(xmlhttp.responseBody)
GetXmlDoc.load(XmlHttp.responseXML)이면
m_GetXmlDoc = GetXmlDoc 설정
또 다른
MessageCode = "데이터 요청 중 오류가 발생했습니다!"
하위 종료
종료 조건
GetXmlDoc = 없음으로 설정
XmlHttp = 없음 설정
서브 끝
'------------------------------------------------ -
'보내기 요청 XML 데이터 인쇄
'------------------------------------------------ -
공개 하위 PrintSendXmlData()
응답.지우기
Response.ContentType = "텍스트/xml"
Response.CharSet = "gb2312"
응답.만료 = 0
Response.Write "<?xml version=""1.0"" 인코딩=""gb2312""?>"&vbNewLine
응답.쓰기 XmlDoc.documentElement.XML
서브 끝
'------------------------------------------------ -
'반환된 XML 데이터를 인쇄합니다.
'------------------------------------------------ -
공개 하위 PrintGetXmlData()
응답.지우기
Response.ContentType = "텍스트/xml"
Response.CharSet = "gb2312"
응답.만료 = 0
IsObject(m_GetXmlDoc)이면
Response.Write "<?xml version=""1.0"" 인코딩=""gb2312""?>"&vbNewLine
응답.쓰기 m_GetXmlDoc.documentElement.XML
또 다른
응답.쓰기 "<?xml version=""1.0"" 인코딩=""gb2312""?><root></root>"
종료 조건
서브 끝
Rem은 전송 요청 xml 데이터를 sendxml_date.txt라는 파일에 저장합니다.
공개 하위 SaveSendXmlDataToFile()
희미한 파일 이름,str
파일 이름 = "sendxml_" & DateValue(현재) & ".txt"
str = ""
str = str & ""& Now() & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
str = str & "<?xml version=""1.0"" 인코딩=""gb2312""?>" & vbNewLine
str = str & XmlDoc.documentElement.XML & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
WriteStringToFile 파일 이름,str
서브 끝
Rem은 반환된 XML 데이터를 getxml_date.txt라는 파일에 저장합니다.
공개 하위 SaveGetXmlDataToFile()
희미한 파일 이름,str
파일 이름 = "getxml_" & DateValue(현재) & ".txt"
str = ""
str = str & ""& Now() & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
IsObject(m_GetXmlDoc)이면
str = str & "<?xml version=""1.0"" 인코딩=""gb2312""?>" & vbNewLine
str = str & m_GetXmlDoc.documentElement.XML
또 다른
str = str & "<?xml version=""1.0"" 인코딩=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
종료 조건
str = str & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
WriteStringToFile 파일 이름,str
서브 끝
'------------------------------------------------ -
'반환된 xml의 노드 정보를 가져옵니다.
'XmlClassObj.GetSingleNode("//msg")
'------------------------------------------------ -
공용 함수 GetSingleNode(nodestring)
IsObject(m_GetXmlDoc)이면
GetSingleNode = m_GetXmlDoc.documentElement.selectSingleNode(nodestring).text
또 다른
GetSingleNode = ""
종료 조건
기능 종료
'''''''''''''''''xml 부분 전송 끝
''''''''''''''''' 수신 XML 부분이 시작됩니다
'------------------------------------------------ -
'XML 패키지를 수신하면 메시지 객체를 통해 오류 정보를 얻습니다.
'------------------------------------------------ -
공개 함수 AcceptHttpData()
희미한 XMLdom
XMLdom = Server.CreateObject("Microsoft.XMLDOM") 설정
XMLdom.Async = 거짓
XMLdom.Load(요청)
XMLdom.parseError.errorCode <> 0인 경우
MessageCode = "데이터를 올바르게 수신할 수 없습니다." & "Descript_ion: " & XMLdom.parseError.reason & "<br>라인: " & XMLdom.parseError.Line
m_XmlDocAccept = Null로 설정
또 다른
m_XmlDocAccept = XMLdom으로 설정
종료 조건
함수 종료
'---------------------------------- -- ---
'XML 패키지 노드 정보를 받기 위해 돌아갑니다.
'XmlClassObj.GetSingleNode("//msg")
'------------------------------------------------ -
공용 함수 AcceptSingleNode(nodestring)
IsObject(m_XmlDocAccept)이면
AcceptSingleNode = m_XmlDocAccept.documentElement.selectSingleNode(nodestring).text
또 다른
AcceptSingleNode = ""
종료 조건
기능 종료
'------------------------------------------------ -
'수신측에서 받은 XML 데이터를 출력합니다.
'------------------------------------------------ -
공개 하위 PrintAcceptXmlData()
응답.지우기
Response.ContentType = "텍스트/xml"
Response.CharSet = "gb2312"
응답.만료 = 0
IsObject(m_XmlDocAccept)이면
Response.Write "<?xml version=""1.0"" 인코딩=""gb2312""?>"&vbNewLine
응답.쓰기 m_XmlDocAccept.documentElement.XML
또 다른
응답.쓰기 "<?xml version=""1.0"" 인코딩=""gb2312""?><root></root>"
종료 조건
서브 끝
Rem은 수신된 XML 패킷 데이터를 acceptxml_date.txt라는 파일에 저장합니다.
공개 하위 SaveAcceptXmlDataToFile()
희미한 파일 이름,str
파일 이름 = "acceptxml_" & DateValue(현재) & ".txt"
str = ""
str = str & ""& Now() & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
IsObject(m_XmlDocAccept)이면
str = str & "<?xml version=""1.0"" 인코딩=""gb2312""?>" & vbNewLine
str = str & m_XmlDocAccept.documentElement.XML
또 다른
str = str & "<?xml version=""1.0"" 인코딩=""gb2312""?>" & vbNewLine & "<root>" & vbNewLine & "</root>"
종료 조건
str = str & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
str = str & vbNewLine & vbNewLine & vbNewLine
WriteStringToFile 파일 이름,str
서브 끝
''''''''''''''''xml 부분을 받고
Rem을 종료합니다. 디버깅 데이터를 debugnote_date.txt라는 파일에 저장합니다.
공개 하위 SaveDebugStringToFile(debugstr)
희미한 파일 이름,str
파일 이름 = "debugnote_" & DateValue(현재) & ".txt"
str = ""
str = str & ""& Now() & vbNewLine
str = str & "---------------------------------- --- "& vbNewLine
str = str & debugstr & vbNewLine
str = str & "---------------------------------- --- "
str = str & vbNewLine & vbNewLine & vbNewLine
WriteStringToFile 파일 이름,str
End Sub
'공개 메소드가 종료됩니다-------------
수업 종료
%>
filemd5fun.asp
<!--#Include File="xmlcls.asp"-->
<%
Rem은 파일의 md5를 가져오고 매개변수는 파일 이름입니다.
함수 GetFileMD5(파일 이름)
Const Apisysno = "k8n6g2b0m1a6b0f6e8" '인터페이스의 불법적용을 방지하기 위해 인터페이스의 Key 값은 일관되어야 합니다.
DimXmlClassObj
Set XmlClassObj = new XmlClass '객체 생성
XmlClassObj.LoadXmlFromString("<?xml version=""1.0"" 인코딩=""gb2312""?><root/>") 'XmlDOC 개체를 xml 문자로 채우고 이를 사용하여 xml을 보냅니다.
XmlClassObj.URL = " http://www.shouji138.com/aspnet2/FileMD5.aspx " '응답 URL을 설정합니다. 이 URL은 귀하의 URL로 변경되어야 합니다.
Rem XML 형식
Rem "<?xml version="1.0" 인코딩="gb2312"?>
렘 <루트>
렘 <sysno></sysno>
렘 <apiaction></apiaction>
렘 <파일 이름></파일 이름>
렘 </root>
XmlClassObj.NodeValue "sysno",Apisysno,0,False '불법적용 방지를 위한 인터페이스의 키값
XmlClassObj.NodeValue "apiaction","createfilemd5",0,False '다양한 목적으로 인터페이스를 정의하는 데 사용되는 인터페이스의 응답 작업
XmlClassObj.NodeValue "filename",filename,0,False '파일 경로 및 파일 이름, 상대 경로 사용'
XmlClassObj.SaveSendXmlDataToFile() '디버깅 목적으로 전송된 xml 데이터베이스 패키지를 txt 파일에 저장
XmlClassObj.SendHttpData() 'xml 데이터 보내기
'XmlClassObj.SaveGetXmlDataToFile() '받은 xml 데이터를 저장합니다.
Rem 처리 결과
Dim 메시지, 상태
status = XmlClassObj.GetSingleNode("//status") '상태 표시, 정상이면 성공, 그렇지 않으면 오류 발생
message = XmlClassObj.GetSingleNode("//message") '얻은 MD5 값을 표시합니다. 상태가 양호하지 않으면 오류 메시지입니다.
XmlClassObj = Nothing으로 설정
상태 = "OK"인 경우
GetFileMD5 = 메시지
또 다른
GetFileMD5 = ""
종료 조건
함수 종료
%>
test.asp
<!--#Include File="filemd5fun.asp"-->
<%
Response.Write "web.config의 md5 값은 다음과 같습니다:" & GetFileMD5("web.config") & "<br />"
Response.Write "files/logo-yy.gif의 md5 값은 다음과 같습니다." & GetFileMD5("files/logo-yy.gif") & "<br />"
Response.Write "xmlcls.asp의 md5 값은 다음과 같습니다:" & GetFileMD5("xmlcls.asp") & "<br />"
%>
.net 사이드 코드:
MD5.cs
시스템 사용;
System.Collections.Generic을 사용합니다.
System.Text 사용;
System.IO
네임스페이스 Winsteps.FileMD5
사용
{
공개 클래스 MD5
{
공개 정적 문자열 md5_hash(문자열 경로)
{
노력하다
{
FileStream get_file = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read);
System.Security.Cryptography.MD5CryptoServiceProvider get_md5 = 새로운 System.Security.Cryptography.MD5CryptoServiceProvider();
byte[] hash_byte = get_md5.ComputeHash(get_file);
문자열 결과 = System.BitConverter.ToString(hash_byte);
resule = resule.Replace("-", "");
결과 반환;
}
잡기 (예외 e)
{
e.메시지를 반환합니다.
}
}
}
}
FileMD5.aspx
<%@ 페이지 언어="C#" AutoEventWireup="true" CodeBehind="FileMD5.aspx.cs" Inherits="Winsteps.FileMD5.FileMD5" %>
<!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 runat="서버">
<title>모바일 테마 웹사이트: http://www.shouji138.com</title>
</head>
<본문>
<form id="form1" runat="서버">
<div>
</div>
</form>
</body>
</html>
FileMD5.aspx.cs
;
System.Data 사용;
System.Configuration 사용;
System.Collections 사용;
System.Web 사용;
System.Web.Security 사용;
System.Web.UI 사용;
System.Web.UI.WebControls 사용;
System.Web.UI.WebControls.WebParts 사용;
System.Web.UI.HtmlControls 사용;
System.Xml 사용;
System.Configuration
네임스페이스 Winsteps.FileMD5
사용
{
공개 부분 클래스 FileMD5 : System.Web.UI.Page
{
protected void Page_Load(개체 전송자, EventArgs e)
{
문자열 sysno = "11111";
문자열 상태 = "거짓";
string message = "지정되지 않은 오류";
string net2sysno = ConfigurationManager.AppSettings["sysno"];
XmlDocument doc = new XmlDocument();
노력하다
{
doc.Load(Request.InputStream);
sysno = doc.SelectSingleNode("//sysno").InnerText.Trim();
if (net2sysno != sysno)
{
message = "잘못된 애플리케이션입니다!";
}
또 다른
{
string filename = Server.MapPath(doc.SelectSingleNode("//filename").InnerText.Trim());
메시지 = MD5.md5_hash(파일명);
상태 = "확인";
}
}
catch(예외예외)
{
message = ex.메시지;
}
마지막으로
{
if (doc != null)
문서 = null;
}
Response.Clear(); //html 문자 지우기
Response.ContentType = "텍스트/xml";
Response.Charset = "GB2312";//xml 문자열에 중국어가 포함된 경우
Response.Write("<?xml 버전="1.0" 인코딩="GB2312"?>");
Response.Write("<루트>");
Response.Write(" <상태>" + 상태 + "</상태>");
Response.Write(" <메시지>" + 메시지 + "</message>");
Response.Write("</root>");
응답.끝()
}
}
}
Web.config
<?xml version="1.0" 인코딩="utf-8"?>
<구성>
<앱 설정>
<add key="sysno" value="k8n6g2b0m1a6b0f6e8"></add>
</app설정>
<시스템.웹>
<httpRuntime 실행Timeout="3600" maxRequestLength="1048576"/>
<컴파일 디버그="true" defaultLanguage="c#" />
<customErrors 모드="끄기" />
<ID impersonate="true"/>
<인증 모드="양식">
<forms name="forums" path="/" loginUrl="Login.aspx" protection="All" timeout="40">
</forms>
</인증>
<pages verifyRequest="false"></pages>
<세계화 requestEncoding="gb2312" responseEncoding="gb2312" 문화="zh-CN" uiCulture="zh-CN"/>
</system.web>
</구성>
web.config의 sysno는 filemd5fun.asp의 Apisysno와 일치해야 합니다. 보안을 보장하려면 특정 응용 프로그램 중에 이 키를 사용자 고유의 값으로 변경해야 합니다.
데모 주소: http://www.shouji138.com/aspnet2/filemd5.asp
코드는 길지만 원리는 간단합니다. ASP는 xml 데이터를 asp.net으로 보냅니다. (xml에는 md5라는 파일 이름이 포함되어 있습니다.) -> asp.net은 xml을 수신하고 파일에 대해 md5를 수행합니다. -> asp.net이 반환됩니다. xml을 통해 asp에 대한 결과(xml에는 얻은 md5 값이 포함되어 있음)->asp는 반환된 xml을 얻고 md5 값을 구문 분석합니다.
적용 범위:
1. 두 시스템 간에 파일을 전송할 때 전송 전 파일 md5와 전송 후 파일 md5를 수행하여 두 값이 동일한지 확인할 수 있습니다. 이는 전송 과정에서 수정되지 않았음을 의미합니다.
2. 업로드 시스템에서 동일한 파일을 업로드할 수 없는 경우 업로드된 파일의 md5를 데이터베이스에 저장할 수 있습니다. 이렇게 하면 다음에 동일한 파일을 업로드할 경우 md5가 됩니다. 동일하며 업로드가 거부됩니다.
3. 검색 엔진 및 Xunlei b2b 소프트웨어에서 파일 md5의 경우 파일 이름이 동일한지 여부에 관계없이 동일한 md5가 있는 파일은 동일한 파일로 간주되며 파일은 여러 소스에서 공유될 수 있습니다.
4. 기타 용도. . . . .
ASP 파일 md5 구성 요소를 등록하기 위해
COM 구성 요소(구성 요소를 서버에 등록해야 함)를 통해 md5를 구현합니다.
다운로드 주소: DelphiASPObj.in_path=Server.Mappath("Web.config") '파일 경로3. md5 파일을 얻는 두 가지 방법 비교
첫 번째 방법은 asp.net 프로그램으로 xml 데이터와 상호 작용하여 파일의 md5를 얻는 것입니다. asp.net 환경이지만 가격이 더 높습니다.
두 번째 방법은 COM 구성 요소를 등록하여 구현되는 방법으로, 서버 권한이 필요하며 서버를 소유한 사용자에게 더 적합합니다.
또한 첫 번째 상호 작용 방법은 ASP를 더욱 유연하게 만들고 데이터 상호 작용을 위해 서로 다른 두 서버에서 사용할 수 있으며 다양한 이기종 플랫폼에서 널리 사용할 수 있습니다.
4. 다운로드 주소는 내 웹사이트 및 모바일 테마 네트워크로 이동하여 데모를 보고 프로그램 패키지 데모 주소를 다운로드하십시오: http://www.shouji138.com/aspnet2/filemd5.asp
프로그램 다운로드 패키지 다운로드: