作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想使用 django-channels 上传文件和图片但我不知道从哪里开始。似乎没有太多关于 websockets 和文件/图像上传的文档。有任何想法吗?
最佳答案
我也遇到了同样的问题,我通过上传 S3 存储桶中的图像/文件来解决它。我们只需要解码base64代码并上传文件并将URL返回给websocket。我们还可以通过提供文件类型来提供图像预览。
def file_upload(self, data):
# Convert decode the base64 data
file = base64.b64decode(data['data']['content'].split(',')[-1])
filename = data['data']['filename']
type = data['data']['type']
AWS_ACCESS_KEY_ID = getattr(settings, "AWS_S3_ACCESS_KEY_ID")
AWS_SECRET_ACCESS_KEY = getattr(settings, "AWS_S3_SECRET_ACCESS_KEY")
bucket_name = getattr(settings, "AWS_STORAGE_BUCKET_NAME")
conn = boto.connect_s3(AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY)
bucket = conn.get_bucket(bucket_name)
k = Key(bucket)
k.key = getattr(settings, "AWS_CHAT_DIR") + '/' + filename
k.set_metadata('Content-Type', type)
k.set_contents_from_string(file)
url = 'https://' + getattr(settings, "AWS_BUCKET_URL") + '/' + k.key
message = url
content = {
'command': 'new_message',
'message': self.message_to_json(message)
}
return self.send_chat_message(content)
关于websocket - Django channel 文件/图片上传,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41492493/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!