开发者社区> 问答> 正文

在钉钉中dd.chooseImage返回的结果是否可以用作/media/upload的参数呢?

在钉钉中dd.chooseImage返回的结果是否可以用作/media/upload的参数呢?

展开
收起
花开富贵111 2024-08-13 18:44:24 65 0
1 条回答
写回答
取消 提交回答
  • 可以的。在钉钉开发中,dd.chooseImage API 用于让用户选择图片,它会返回一个包含图片文件路径(mediaId)的数组。之后,你可以直接使用这个 mediaId 作为参数调用 /media/upload 接口来上传图片到钉钉服务器。这样,你就可以在需要的地方引用上传后的图片了。请注意,mediaId 有有效期,通常为3天,过期后需要重新选择或上传图片。在实际应用中,确保及时使用或存储 mediaId 以避免失效。示例代码(JavaScript 版本,仅供参考):

    // 使用 dd.chooseImage 选择图片
    dd.chooseImage({
        count: 1, // 一次可以选择的图片数量
        success: function (res) {
            var mediaId = res.tempFiles[0].tempfileId;
    

    // 获取选中图片的mediaId

        // 使用获取到的 mediaId 调用 /media/upload 接口上传图片
        dd.httpRequest({
            url: 'https://oapi.dingtalk.com/media/upload',
            method: 'POST',
            headers: {
                'Content-Type': 'multipart/form-data'
            },
            data: {
                'media': mediaId,
                'type': 'image'
            },
            success: function (uploadRes) {
                var imageUrl = uploadRes.data.url; // 上传成功后,可以获取到图片的在线URL
                console.log('图片上传成功,URL:', imageUrl);
            },
            fail: function (err) {
                console.error('图片上传失败:', err);
            }
        });
    },
    fail: function (err) {
        console.error('选择图片失败:', err);
    }
    

    });
    请根据实际的钉钉API文档调整代码细节,因为API可能会更新。此回答整理来自钉群“钉钉开发者社区(互助群)”。

    2024-08-13 21:13:43
    赞同 2 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
问答排行榜
最热
最新

相关电子书

更多
钉钉小程序——为工作方式插上翅膀 立即下载
钉钉客户端自动化的应用 立即下载
使命必达 —— 钉钉企业级 消息服务的机遇与挑战 立即下载