Boa tarde a todos
Peço um auxílio nesta necessidade. O objetivo é enviar um arquivo mp3 para um Web Server através de um código VBA Access. Eu clico em um botão e o arquivo é enviado. Não é necessário selecionar o arquivo antes em um diretório, pois é um arquivo padrão.
Antes de seguir com os procedimentos no Access, eu testei, com sucesso, envio do arquivo pelo Postman e pesquisei alguns exemplos. No momento eu estou testando este código:
Mas ao executar eu recebo este erro:
{"errorCode":"05ade068-4f43-49bb-a428-75ea8f2d3853","url":"URL_DO_WEB_SERVER","friendlyMessage":"Erro inesperado","exceptionMessage":"Required request part 'file' is not present"}
Na linha do código strFileAudio = strFileAudio & arqEspera & vbCrLf eu tenho a variável arqEspera que eu tenho como objetivo usar como o arquivo a ser enviado ao Web Server. Este arquivo é "espera.mp3" e está salvo no diretório "E:\audio\".
Eu entendo que este pode ser o meu problema. Eu não encontrei nas pesquisas que eu fiz uma maneira de buscar o arquivo mp3 a ser enviado. O código que eu enviei acima não mostra as tentativas que eu fiz para tentar "buscar" o arquivo pois de nenhuma forma eu consegui.
No Postman, eu verifiquei o code com HTTP que ele fornece, onde temos esta parte:
A partir disso eu fiz o strFileAudio e Headers de forma semelhante.
Agradeço desde já qualquer ajuda.
Enio Eltz Filho.
Peço um auxílio nesta necessidade. O objetivo é enviar um arquivo mp3 para um Web Server através de um código VBA Access. Eu clico em um botão e o arquivo é enviado. Não é necessário selecionar o arquivo antes em um diretório, pois é um arquivo padrão.
Antes de seguir com os procedimentos no Access, eu testei, com sucesso, envio do arquivo pelo Postman e pesquisei alguns exemplos. No momento eu estou testando este código:
- Código:
Dim objHTTPaudio As Object
Dim strEspera As String
Dim strBoundaryFile, strBoundaryAudio As String
Dim strURLaudio, strFileAudio, strLengthAudio As String
Set objHTTPaudio = CreateObject("WinHttp.WinHttpRequest.5.1")
strEspera = "espera.mp3"
strBoundaryFile = String(4, "-") & "WebKitFormBoundary7MA4YWxkTrZu0gW"
strBoundaryAudio = strBoundaryFile & vbNewLine
strURLaudio = "URL_do_Web_Service"
strFileAudio = strFileAudio & "-" & strBoundaryFile & vbCrLf
strFileAudio = strFileAudio & "Content-Disposition: form-data; name=""file""; " & "filename=""" & strEspera & """" & vbCrLf
strFileAudio = strFileAudio & "Content-Type: audio/mpeg" & vbCrLf
strFileAudio = strFileAudio & arqEspera & vbCrLf
strFileAudio = strFileAudio & "--" & strBoundaryFile & "--" & vbCrLf & vbCrLf
strLengthAudio = Len(strFileAudio)
objHTTPaudio.Open "POST", strURLaudio, False
objHTTPaudio.setRequestHeader "Authorization", lerJsonAuth
objHTTPaudio.setRequestHeader "Content-Length", strLengthAudio
objHTTPaudio.setRequestHeader "Content-Type", "multipart/form-data; boundary=" & strBoundaryAudio
objHTTPaudio.setRequestHeader "Accept", "*/*"
objHTTPaudio.setRequestHeader "User-Agent", "MSAccess"
objHTTPaudio.setRequestHeader "Connection", "keep-alive"
objHTTPaudio.send strFileAudio
Set objHTTPaudio = Nothing
Mas ao executar eu recebo este erro:
{"errorCode":"05ade068-4f43-49bb-a428-75ea8f2d3853","url":"URL_DO_WEB_SERVER","friendlyMessage":"Erro inesperado","exceptionMessage":"Required request part 'file' is not present"}
Na linha do código strFileAudio = strFileAudio & arqEspera & vbCrLf eu tenho a variável arqEspera que eu tenho como objetivo usar como o arquivo a ser enviado ao Web Server. Este arquivo é "espera.mp3" e está salvo no diretório "E:\audio\".
Eu entendo que este pode ser o meu problema. Eu não encontrei nas pesquisas que eu fiz uma maneira de buscar o arquivo mp3 a ser enviado. O código que eu enviei acima não mostra as tentativas que eu fiz para tentar "buscar" o arquivo pois de nenhuma forma eu consegui.
No Postman, eu verifiquei o code com HTTP que ele fornece, onde temos esta parte:
- Código:
Content-Length: 182
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="file"; filename="espera.mp3"
Content-Type: audio/mpeg
(data)
------WebKitFormBoundary7MA4YWxkTrZu0gW--
A partir disso eu fiz o strFileAudio e Headers de forma semelhante.
Agradeço desde já qualquer ajuda.
Enio Eltz Filho.