Я пытаюсь создать приложение, которое позволяет пользователю загружать изображение на мой сервер.
Однако это всегда возвращает:
Код ошибки 500: неправильный запрос
Может быть, у вас есть идея, что не так …
Здесь .lua
код:
upload:addEventListener( "tap",
function( event )
if ( isPhoto == false ) then
media.capturePhoto( { listener = onPhoto, destination = { baseDir = system.TemporaryDirectory, filename = "capture.jpg", type = "image" } } )
else
local params = { timeout = 30, progress = true, bodyType = "binary" }
local headers = {}
headers.filename = filename
params.headers = headers
network.upload( "http://www.m7-studios.de/(link to .php)", "POST", onNetwork, params, "capture.jpg", system.TemporaryDirectory, "image/jpg" )
end
return true
end )
function onPhoto( event )
if ( event.completed == true ) then
isPhoto = true
end
Я использую пример .php
:
Я просто читаю это очень быстро, но вы получите эту ошибку, если не включите в свой запрос следующие параметры:
HTTP_FILENAME
ТИП СОДЕРЖИМОГО
CONTENT_LENGTH
это написано в этой строке в скрипте php:
if ((isset($_SERVER["HTTP_FILENAME"])) && (isset($_SERVER["CONTENT_TYPE"])) && (isset($_SERVER["CONTENT_LENGTH"])))
Чтобы отправить параметры в ваш php-скрипт, вам нужно добавить их в ваш params.body в виде строки, вероятно, разделенной &:
params.body = "HTTP_FILENAME='filename'&CONTENT_TYPE='filetype'&CONTENT_LENGTH="..1024*1024*5
Хотя не совсем уверен, посмотрите ссылку, которую я разместил в комментариях.
Решаемые. Ошибка заключалась в временном сохранении изображения, что, похоже, создает проблемы.