使用@twilio/conversations发送Twilio消息时如何为媒体添加文件名?
解决方案
你的传参结构不符合@twilio/conversations包sendMessage方法的参数规范,所有媒体相关配置需放在方法的第二个参数位,你当前全部放在第一个参数位,导致文件名配置无法被识别。
正确实现代码
// sendMessage 第一个参数为文本消息内容,无附加文本可传 undefined 或空字符串 props.conversationProxy.sendMessage(undefined, { contentType: event.target.files.files[0].type, filename: event.target.files.files[0].name, media: event.target.files.files[0] });
异常兼容
如果调整参数结构后filename仍返回null,将参数中的filename字段替换为mediaFilename即可,不同版本的包对该字段的key定义存在微小差异:
props.conversationProxy.sendMessage(undefined, { contentType: event.target.files.files[0].type, mediaFilename: event.target.files.files[0].name, media: event.target.files.files[0] });
效果验证
调整后重新发送媒体资源,Twilio返回的媒体资源对象中filename字段会正常返回你传入的自定义文件名。
内容的提问来源于stack exchange,提问作者Prashant Patil
相关产品推荐
相关产品推荐

