如何在 React JS 中将 Image-Url 分享到 Facebook、Twitter 和 Instagram

Amr*_* VS 6 javascript twitter share instagram reactjs

我有一个页面,用户可以在其中上传图像并使用一个 Api 进行编辑。

现在使用收到的 URL 格式的图像,需要在 Facebook、Twitter 和 Instagram 等社交媒体上共享。

以下是用于社交媒体重定向的 URL:

Facebook - https://www.facebook.com/sharer.php?u= ${window.location.href}?imageurl=${imageUrl} Twitter - https://twitter.com/intent/tweet?url= $ {window.location.href}?imageurl=${imageUrl} Instagram - 尚未找到

尝试过的事情:尝试使用 componentDidMount 中的 createElement 和 setAttribute 动态地将存储在状态中的 {imageUrl} 添加到元标记中,这没有在 facebook 中更新此图像,但能够在 head->meta 标记中的 og:image 中添加此图像。请为我提供一些解决方案。这将是一个很大的帮助。

           <a
            data-pgaction-redirection="0"
            target="_blank"
            rel="noopener noreferrer"
            title={title}
            href=`{https://www.facebook.com/sharer.php?u=${window.location.href}? 
            imageurl=${this.state.imageUrl}}`
          >
           Facebook
          </a>
Run Code Online (Sandbox Code Playgroud)

Amr*_* VS 3

我实施的答案如下。假设 Facebook URL 是

https://www.facebook.com/sharer.php?u=https:example.com?imageurl=${this.state.imageUrl}}
Run Code Online (Sandbox Code Playgroud)

您可以将动态图像 URL 附加到该imageurl属性,Facebook 的爬虫将转到https:example.com/imageurl=https://imageurl.url.com. 然后,如果您使用的是 NEXT JS ,则必须提取查询参数并附加 -URI imageurl,最后返回它。getInitialProps

无论提取 URI 是什么,imageurl我都可以将其添加到元og:image标记中。