login register Sysop! about ME  

2020년 04월 02일 16시 27분 00초,     조회수 : 237
  제목 : RE : Content-Disposition 급히 질문드립니다
SEQ : 164263 글쓴이 : supercore

작성 포맷 : TEXT 모드, 자동 줄바꿈 사용

기본 Syntax 만 체크했습니다. 같이 풀어보시죠;;


Dim sendResult

sendResult = fn_SendData(Server.MapPath("/image/auth") & "\test.jpg", "testuser")

Response.Write "SendResult : "& sendResult

Function fn_SendData(filePath, memId)
    Const CONT_SEND_URL = "http://보내는 주소"

    Dim objFile, fileName, fileExtension, contentType, fileByte
    Dim boundary
    Dim payloadData
    Dim sendResult

    '파일체크
    With Server.CreateObject("Scripting.FileSystemObject")
        If .FileExists(filePath) Then 
            Set objFile = .GetFile(filePath)

            fileName = objFile.Name
            fileExtension = .GetExtensionName(filePath)

            Set objFile = Nothing
        Else
            ' 파일 없음???
            fn_SendData = "ERROR - 404"
        End If

    End With

    '확장자 체크
    Select Case Ucase(fileExtension)
        Case "JPG" : contentType = "image/jpeg"
        Csae "PNG" : contentType = "image/png"
        case "TXT" : contentType = "text/plain"
        '.......
        Case Else : contentType = "application/octet-stream"
    End Select
    
    '
    boundary = String(6, "-") & Replace(Mid(Server.CreateObject("Scriptlet.TypeLib").Guid, 2, 36), "-", "")

    ' 파일 스트림
    With Server.CreateObject("ADODB.Stream")
        .Type = 1
        .Mode = 3
        .Open
        .LoadFromFile filePath
        fileByte = .Read
    End With

    With Server.CreateObject("ADODB.Stream")
        .Mode = 3
        .Charset = "UTF-8"
        .Open
        .Type = 2
        .WriteText "--" & boundary & vbCrLf
        .WriteText "Content-Disposition: form-data; name=""memId""" & vbCrLf & vbCrLf & ""& memId &"" & 
vbCrLf  &"--" & boundary & vbCrLf
        .WriteText "Content-Disposition: form-data; name=""file""; filename=""" & fileName & """" & vbCrLf
        .WriteText "Content-Type: """ & contentType & """" & vbCrLf & vbCrLf
        .Position = 0
        .Type = 1
        .Position = .Size
        .Write fileByte
        .Position = 0
        .Type = 2
        .Position = .Size
        .WriteText vbCrLf & "--" & boundary & "--"
        .Position = 0
        .Type = 1
        payloadData = .Read
    End With

    With Server.CreateObject("MSXML2.ServerXMLHTTP")
        .SetTimeouts 0, 60000, 300000, 300000
        .Open "POST", CONT_SEND_URL, False
        .SetRequestHeader "Content-type", "multipart/form-data; boundary=" & boundary 
        .Send payloadData

        If .Status = "200" Then 
            sendResult = "OK"
        Else
            sendResult = .ResponseText
        End If
    End With

    fn_SendData = sendResult

End Function

  violin79j
  2020-04-02(18:06)
처리완료입니다.
넘 감사합니다 ㅠ
이거땜에 야근을 하면서 답을 찾고 있었는데 정말 감사합니다.
항상 행복하세요!!



제목 작성자 날짜 조회
Content-Disposition 급히 질문드립니다 (2) violin79j 2020-03-31 200
RE : Content-Disposition 급히 질문드립니다 (1) supercore 2020-04-02 237

 
 
.NET과 Java 동영상 기반의 교육사이트

로딩 중입니다...

서버 프레임워크 지원 : NeoDEEX
based on ASP.NET 3.5
Creative Commons License
{5}
{2} 읽음   :{3} ({4})