Minio Python Client: загрузка байтов напрямую

Я предполагаю, что это фиксированный список. Самый простой способ был бы с провайдером:

    public class MyProvider :  IProvider
    {
        public object Create(IContext context)
        {
            return new Dictionary<string, IMyInterface>{
               {"alpha", context.Kernel.Get<ImpClassOne>()},
               {"beta", context.Kernel.Get<ImplClassTwo>()}
            }
        }

        public Type Type
        {
            get { return typeof(IDictionary<string, IMyInterface>); }
        }
    } 

Вы можете зарегистрировать провайдера в своем ядре, например:

   kernel.Bind<IDictionary<string, IMyInterface>>().ToProvider<MyProvider>();

, а затем [Inject] для свойства будет использовать провайдер для создания словаря.

0
задан guettli 18 March 2019 в 14:15
поделиться

1 ответ

Взгляните на io.BytesIO . Это позволяет вам оборачивать байтовые массивы в поток, который вы можете передать в minio.

Например:

import io
from minio import Minio

value = "Some text I want to upload"
value_as_bytes = value.encode('utf-8')
value_as_a_stream = io.BytesIO(value_as_bytes)

client = Minio("my-url-here", ...) # Edit this bit to connect to your Minio server
client.put_object("my_bucket", "my_key", value_as_a_stream , file_size=len(value_as_bytes))
0
ответ дан Alan 18 March 2019 в 14:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: