Я использую PICloud REST API для запуска фоновой задачи из Google Appengine (GAE). Моя функция PiCloud возвращает байт строку GAE следующим образом:Как я могу вернуть blob (bytestring) из PiCloud в Google Appengine?
результат = numpy.asarray (обр, numpy.float32) .ToString()
возврата pickle.dumps (bz2.compress (результат))
Это работает нормально, за исключением того, что, когда строковый «результат» большой (24 МБ является типичным значением), травление удаляет возвращенное изображение в размере, превышающем ограничение на 32 МБ для ответов на выборку GAE URL, даже при сжатии bz2. Я пробовал использовать json.dumps(), но он не работает. Есть ли способ вернуть blob, который не расширяет его?
Я должен был более внимательно изучить документацию REST API. Решение состоит в том, чтобы публиковать функцию PiCloud с out_encoding = 'raw' cloud.files.publish (function, 'function', out_encoding = 'raw') Результат затем возвращается как строка без заголовка JSON, но с Content-Type: application/octet-stream – MortCanty