我正在使用React和Firebase,并在登录时收到以下信息
photoURL: https://graph.facebook.com/10157648190117379/picture
如果我尝试在JSX中使用以下命令来显示它:
<image src={this.props.user.photoURL} />
什么都没有渲染。我注意到直接导航到链接实际上并没有显示图像,而是提示下载。有什么想法吗谢谢
bkhjykvo1#
是的,没用的。因为有一个错字,HTML中没有名为Image的标记。要显示图像,必须使用img标记。
Image
img
import React from 'react'; import './App.css'; class App extends React.Component { state = { url: 'https://graph.facebook.com/10157648190117379/picture'} render() { return <img alt='Profile' src={this.state.url} />; } } export default App;
URL中没有问题。只要确保使用正确的标签。
lstz6jyr2#
我试过了
import React from "react"; const TestCompOne = (props) => { console.log("[TEST COMP 1]"); return ( <div> <img src={"https://graph.facebook.com/10157648190117379/picture"} /> </div> ); }; export default TestCompOne;
rfbsl7qr3#
2023年解决方案使用firebase“Web Modular API”时
配置文件url可以通过以下方法获得
getAdditionalUserInfo(result);
以下是完整的实现:
import { initializeApp } from 'firebase/app'; import { getAuth, FacebookAuthProvider, signInWithPopup, getAdditionalUserInfo, } from 'firebase/auth'; const firebaseConfig = { apiKey: 'xxx', authDomain: 'xxx', projectId: 'xxx', storageBucket: 'xxx', messagingSenderId: 'xxx', appId: 'xxx', measurementId: 'xxx', }; initializeApp(firebaseConfig); const auth = getAuth(); const provider = new FacebookAuthProvider(); let result = await signInWithPopup(auth, provider); let additional = getAdditionalUserInfo(result); console.log('picture_url: ', additional.profile.data.picture.url); // if token is needet const credential = FacebookAuthProvider.credentialFromResult(result); console.log('credential: ', credential);
参考:https://firebase.google.com/docs/auth/web/facebook-login?hl=de#web-modular-api_4
3条答案
按热度按时间bkhjykvo1#
是的,没用的。因为有一个错字,HTML中没有名为
Image
的标记。要显示图像,必须使用
img
标记。URL中没有问题。只要确保使用正确的标签。
lstz6jyr2#
我试过了
rfbsl7qr3#
2023年解决方案使用firebase“Web Modular API”时
配置文件url可以通过以下方法获得
以下是完整的实现:
参考:https://firebase.google.com/docs/auth/web/facebook-login?hl=de#web-modular-api_4