Instagram:使用媒体ID安装

Instagram:使用媒体ID安装,instagram,instagram-api,Instagram,Instagram Api,比如说,我有一个媒体ID(例如107529704245691366_195350057)。如何使用oEmbedAPI获取嵌入HTML 只接受短代码(与媒体ID不同) 或者如何获取媒体ID的快捷码?API返回的任何媒体对象都有一个名为“link”的字段,该字段是媒体的URL表示形式。您可以将此链接用作oembed端点的“url”参数。如果将来有人发现这个问题,我花了很长时间试图解决它 这一实现值得Nick Hanshaw给予99.9%的赞扬。我所做的只是包含一个指向biginger.js库的CDN

比如说,我有一个媒体ID(例如107529704245691366_195350057)。如何使用oEmbedAPI获取嵌入HTML

只接受短代码(与媒体ID不同)


或者如何获取媒体ID的快捷码?

API返回的任何媒体对象都有一个名为“link”的字段,该字段是媒体的URL表示形式。您可以将此链接用作oembed端点的“url”参数。

如果将来有人发现这个问题,我花了很长时间试图解决它

这一实现值得Nick Hanshaw给予99.9%的赞扬。我所做的只是包含一个指向biginger.js库的CDN链接,这是必需的,但不是Nick代码的一部分。这项功能目前对我有效,它将媒体ID作为字符串传递到函数中,然后返回Instagram照片URL的完整字符串:

<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/big-integer/1.6.40/BigInteger.min.js"></script>
<script type="text/javascript">
    function getInstagramUrlFromMediaId(media_id) {
        var alphabet = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_';
        var shortenedId = '';
        media_id = media_id.substring(0, media_id.indexOf('_'));

        while (media_id > 0) {
            var remainder = bigInt(media_id).mod(64);
            media_id = bigInt(media_id).minus(remainder).divide(64).toString();
            shortenedId = alphabet.charAt(remainder) + shortenedId;
        }

        return 'https://www.instagram.com/p/' + shortenedId + '/';
    }
</script>

函数getInstagramUrlFromMediaId(媒体id){
var字母表='ABCDEFGHIjklmnopqrstuvxyzabCDEFGHIjklmnopqrstuvxyz012456789-"';
var shortenedId=“”;
媒体id=媒体id.子字符串(0,媒体id.indexOf(“”“);
而(媒体id>0){
var余数=bigInt(媒体id).mod(64);
media_id=bigInt(media_id).减号(余数).divide(64).toString();
shortenedId=字母表.charAt(余数)+shortenedId;
}
返回'https://www.instagram.com/p/“+shortenedId+”/”;
}

OP没有链接或URL,他们有媒体ID。如何将该媒体ID转换为链接/URL/快捷码?不知道为什么会打勾,因为它根本不能解决或回答问题(除非我误读了?)