ফেসবুক এপিআই - আমি কীভাবে ফেসবুক এপিআইয়ের মাধ্যমে কোনও ফেসবুক ব্যবহারকারীর প্রোফাইল চিত্র পেতে পারি (ব্যবহারকারীর অ্যাপ্লিকেশনটিকে "অনুমতি দিন" না করে)


257

আমি এমন একটি সিএমএসে কাজ করছি যা তাদের ফেসবুক ইউআরএল থেকে (অর্থাৎ, http://facebook.com/users_unique_url ) ব্যবহারকারীর প্রোফাইল চিত্রটি নিয়ে আসে । আমি কীভাবে এটি সম্পাদন করতে পারি? এমন কোনও ফেসবুক এপিআই কল রয়েছে যা ব্যবহারকারীর অ্যাপ্লিকেশনকে অনুমতি দেওয়ার প্রয়োজন ছাড়াই কোনও ব্যবহারকারীর প্রোফাইল ইমেজ ইউআরএল আনে ?

উত্তর:


409

এই ইউআরএলের মাধ্যমে কেবল ডেটা আনুন :

http://graph.facebook.com/userid_here/picture

userid_hereআপনি যে ছবিটির ফটো পেতে চান তার আইডি দিয়ে প্রতিস্থাপন করুন । আপনি এইচটিটিপিএসও ব্যবহার করতে পারেন।

আপনি file_get_contentsসেই URL টি পড়তে এবং পুনরুদ্ধার করা ডেটা প্রক্রিয়া করতে পিএইচপি এর ফাংশন ব্যবহার করতে পারেন ।

সম্পদ:

http://developers.facebook.com/docs/api

নোট: ইন php.ini, আপনি কি নিশ্চিত যে করতে হবে দ্বারা OpenSSL এক্সটেনশানটি ব্যবহারের জন্য সক্রিয় করা হয় file_get_contentsপিএইচপি ফাংশন যে URL পড়তে।


73
এই পৃষ্ঠাটি আরও ?type=largeদেখতে চাইলে , আরও একটি দরকারী জিনিস হ'ল ক্যোয়ারস্ট্রিং যা আপনি যুক্ত করতে পারেন। আমি যে স্ক্রিন-স্ক্র্যাপিংটি টাইপ করছিলাম তার চেয়ে পুরোপুরি আরও ভাল উত্তর নিয়ে আসার জন্য প্রপস, বিটিডাব্লু :)।
ডোমেনিক

6
<img src="//graph.facebook.com/sarfraz.anees/picture" />আপনি যদি HTTP এবং HTTPS এর মধ্যে পরিবর্তন করেন তবে ব্যবহার করুন ... প্রোটোকলটি ব্রাউজারটি সনাক্ত করেছে এবং আপনি HTTPS- তে মিশ্র সামগ্রীর সতর্কতা পাবেন না।
ক্রিস জ্যাকব

39
এটা জোর দিয়ে করা উচিত, কিছু ব্যবহারকারীর না না তাদের এফবি অ্যাকাউন্টের জন্য একটি ব্যবহারকারী নাম সেট আছে। যখন এটি হয়, এবং আপনি এই উত্তরটি বাস্তবায়নের চেষ্টা করছেন, আপনি এফবির ডিফল্ট প্রোফাইল ছবি, প্রশ্ন চিহ্ন পাবেন। সহজেই এই সমস্যা এড়াতে, পরিবর্তে ব্যবহারকারীর এফবি আইডি ব্যবহার করুন।
জোশ

7
এটি লক্ষ করা উচিত যে গ্রাফ এপিআই এর ভি 2 এ আর ব্যবহারকারীর নাম ব্যবহার করে কাজ করে না। সুতরাং এখন আপনার প্রথমে ইউজারআইড দরকার এবং এটি পেতে আপনি আর ব্যবহারকারীর নাম ব্যবহার করতে পারবেন না। ইউজারিডের প্রতি অ্যাপ্লিকেশনও পরিবর্তিত হয়, তাই আপনি ব্যবহার করতে পারবেন এমন ব্যবহারকারীকে পুনরুদ্ধার করতে আপনার একধরণের যথাযথ প্রমাণীকরণ থাকতে হবে। প্রযুক্তিগতভাবে প্রোফাইল পিকটি এখনও সর্বজনীন এবং গ্রাফ.ফেসবুক . com/v2.2/ 4 /picture?redirect=0 এ উপলব্ধ যদিও ব্যবহারকারীদাতাকে খুঁজে বের করা (আগের লিঙ্কে 4) কেবল ব্যবহারকারীর প্রোফাইলে ভিত্তি করে অসম্ভব বলে মনে হচ্ছে। পুরানো গ্রাফ ইউআরএল এখনও এপ্রিল 2015 পর্যন্ত কাজ করে
sckd

36
এটি 2015 এবং আমি পাচ্ছি (# 803) ব্যবহারকারীদের তাদের ব্যবহারকারীর নাম (সরফ্রাজ.ইনেস) দিয়ে জিজ্ঞাসা করতে পারছি না
সন্তোষ কুমার

268

দেখানো:

50x50 পিক্সেল

<img src="//graph.facebook.com/{{fid}}/picture">

200 পিক্সেল প্রস্থ

<img src="//graph.facebook.com/{{fid}}/picture?type=large">

সংরক্ষণ করতে (পিএইচপি ব্যবহার করে)

দ্রষ্টব্য: এটি ব্যবহার করবেন না । নীচে @ চিরকালের মন্তব্য দেখুন

$img = file_get_contents('https://graph.facebook.com/'.$fid.'/picture?type=large');
$file = dirname(__file__).'/avatar/'.$fid.'.jpg';
file_put_contents($file, $img);

যেখানে $ ফিড ফেসবুকে আপনার ব্যবহারকারী আইডি।

দ্রষ্টব্য: "18+" হিসাবে চিহ্নিত চিত্রগুলির ক্ষেত্রে আপনার 18++ ব্যবহারকারীর কাছ থেকে একটি বৈধ অ্যাক্সেস_ টোকনের প্রয়োজন হবে:

<img src="//graph.facebook.com/{{fid}}/picture?access_token={{access_token}}">

আপডেট 2015:

গ্রাফ API v2.0 ব্যবহারকারীর নাম ব্যবহার করে জিজ্ঞাসা করা যাবে না, আপনার সর্বদা ব্যবহার করা উচিতuserId


6
টাইপ প্যারামিটার সম্পর্কে আরও তথ্য: "আপনি টাইপ আর্গুমেন্টের সাথে চিত্রের আকারটি নির্দিষ্ট করতে পারেন যা বর্গক্ষেত্রের একটি (50x50), ছোট (50 পিক্সেল প্রশস্ত, ভেরিয়েবল উচ্চতা), স্বাভাবিক (100 পিক্সেল প্রশস্ত, ভেরিয়েবল উচ্চতা) হওয়া উচিত ) এবং বৃহত্তর (প্রায় 200 পিক্সেল প্রশস্ত, পরিবর্তনশীল উচ্চতা) " ফেসবুকে গ্রাফ এপিআই এর

3
এই পদ্ধতিটি ব্যবহার করতে, আপনাকে অনুমতি_url_fopen চালু করতে হবে। অনুমতি_url_fopen নির্দেশটি ডিফল্টরূপে অক্ষম করা হয়। অনুমতি_url_fopen নির্দেশ সক্ষম করার সিকিউরিটি সম্পর্কিত প্রভাব সম্পর্কে আপনার সচেতন হওয়া উচিত। রিমোট ফাইল অ্যাক্সেস করতে পারে এমন পিএইচপি স্ক্রিপ্টগুলি স্বেচ্ছাসেবী কোড ইনজেকশনের পক্ষে ঝুঁকিপূর্ণ। অনুমতি_url_fopen নির্দেশ সক্ষম করা থাকলে, আপনি এমন স্ক্রিপ্ট লিখতে পারেন যা দূরবর্তী ফাইলগুলি স্থানীয় ফাইল হিসাবে খোলায়।
চিরকাল

দরকারী বলে মনে হচ্ছে, তাই আগাম চিয়ার্স, তবে এক স্তরও খুব নতুন হওয়া এই বোঝার জন্য আমি কোন প্রোগ্রামিং ভাষায় এটি জানতে চাই? আমার অনুমান পিএইচপি।
হ্যালো_এখন_আজ

পছন্দ করুন এটি পিএইচপি (আসলে প্রশ্নটি পিএইচপি হিসাবে ট্যাগ হয় এবং আমি 4 বছর আগে এটিই একমাত্র ভাষা ব্যবহার করি)
neiker

7
জুলাই ২০১৫ এ আর কাজ করে না (ত্রুটি: "ব্যবহারকারীদের ব্যবহারকারীদের দ্বারা জিজ্ঞাসা করা যায় না")
ফ্লিম

164

আপডেট :

আগস্ট ২০১২ এর শেষ থেকে, এপিআই আপডেট করা হয়েছে যাতে আপনি বিভিন্ন আকারের ব্যবহারকারীর প্রোফাইল ছবি পুনরুদ্ধার করতে পারবেন। ইউআরএল প্যারামিটার হিসাবে widthচ্ছিক প্রস্থ এবং উচ্চতা ক্ষেত্রগুলি যুক্ত করুন:

https://graph.facebook.com/USER_ID/picture?width=WIDTH&height=HEIGHT

কোথায় WIDTHএবং HEIGHTআপনার অনুরোধ মাত্রা মান।

এটি অনুপাতের অনুপাতটি সংরক্ষণ করার চেষ্টা করার সময় সর্বনিম্ন আকারের WIDTHx এর সাথে একটি প্রোফাইল ছবি ফেরত দেবে HEIGHT। উদাহরণ স্বরূপ,

https://graph.facebook.com/redbull/picture?width=140&height=110

আয়

    {
      "data": {
        "url": "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4/c0.19.180.142/s148x148/2624_134501175351_4831452_a.jpg",
        "width": 148,
        "height": 117,
        "is_silhouette": false
      }
   }

শেষ আপডেট

ব্যবহারকারীর প্রোফাইল ছবি পেতে কল করুন

https://graph.facebook.com/USER_ID/picture

যেখানে USER_IDব্যবহারকারী আইডি নম্বর বা ব্যবহারকারীর নাম হতে পারে।

একটি নির্দিষ্ট আকারের একটি ব্যবহারকারী প্রোফাইল পেতে, কল করুন

https://graph.facebook.com/USER_ID/picture?type=SIZE

যেখানে SIZEএকটি শব্দের সাথে প্রতিস্থাপন করা উচিত

square
small
normal
large

আপনি যে আকারটি চান তার উপর নির্ভর করে।

এই কলের জন্য একটি ফিরে আসবে URL টি তার আকার আপনার নির্বাচিত টাইপ প্যারামিটার উপর ভিত্তি করে সঙ্গে একটি একক চিত্রে।

উদাহরণ স্বরূপ:

https://graph.facebook.com/USER_ID/picture?type=small

চিত্রটির একটি ছোট সংস্করণে একটি URL প্রদান করে।

এপিআই শুধুমাত্র প্রোফাইল চিত্রগুলির সর্বাধিক আকার নির্দিষ্ট করে, আসল আকার নয়।

স্কয়ার:

সর্বোচ্চ পিক্সেল এবং প্রস্থের উচ্চতা।

ছোট

সর্বোচ্চ পিক্সেল প্রস্থ এবং সর্বোচ্চ পিক্সেলের সর্বোচ্চ উচ্চতা।

সাধারণ

সর্বোচ্চ পিক্সেল এবং সর্বোচ্চ 300 পিক্সেল উচ্চতা প্রস্থ।

বড়

সর্বোচ্চ 200 পিক্সেলের প্রস্থ এবং সর্বোচ্চ 600 পিক্সেলের উচ্চতা।

আপনি যদি ডিফল্টকে USER_ID / চিত্র কল করেন তবে আপনি বর্গাকার প্রকার পাবেন।

শোধন

যদি আপনি কল করেন (উপরের উদাহরণ অনুসারে)

https://graph.facebook.com/redbull/picture?width=140&height=110

আপনি যদি কোনও ফেসবুক এসডিকে অনুরোধ পদ্ধতি ব্যবহার করেন তবে এটি একটি জেএসএন প্রতিক্রিয়া ফিরিয়ে দেবে । অন্যথায় এটি চিত্রটি নিজেই ফিরে আসবে। সর্বদা JSON পুনরুদ্ধার করতে, যুক্ত করুন:

&redirect=false

তাই ভালো:

https://graph.facebook.com/redbull/picture?width=140&height=110&redirect=false

দুর্দান্ত ব্যাখ্যা, তবে আপনি যে ইউআরএল দিয়েছেন তার ফেরত মান (' গ্রাফ.ফেসবুক / রেডবুল /… ) লোকেশন শিরোনামে চিত্র url সহ সাড়া দেয় (' অবস্থান: fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4 /c0.19.180.142/… )। JSON হিসাবে {"ডেটা" এর মতো নয়: {"url": " fbcdn-profile-a.akamaihd.net/hprofile-ak-ash4/c0.19.180.142/… ", "প্রস্থ": 148, "উচ্চতা" : 117, "is_silhouette": মিথ্যা}}
Ghankhan Barış Aker

আমার উত্তরের মতো আমি এখনও তেমন প্রতিক্রিয়া পেয়েছি। আপনি এটি ফেসবুক বিকাশকারীদের গ্রাফ এক্সপ্লোরার-এ বিকাশকারী.ফেসবুক / টোলস / এক্সপ্লোরার এ চেষ্টা করতে পারেন। 'রেডবুল / ছবি? প্রস্থ = 140 এবং উচ্চতা = 110' লিখুন এবং প্রতিক্রিয়াটি দেখুন। আমার উত্তর ধরে ধরেছে যে আপনি এটি ফেসবুক এসডিকেএস এপিআই / অনুরোধ পদ্ধতিগুলির একটির মাধ্যমে ব্যবহার করছেন, যা একটি জেএসওএন প্রতিক্রিয়া ফিরিয়ে দেবে।
গুন্নার কার্লসন

2
@ গুন্নার কার্লসন আপনি ইমেজটিতে &redirect=falseপুনর্নির্দেশের পরিবর্তে
জেএসএন

@ অ্যান্ড্রুউইবার অনেক ধন্যবাদ আমি উত্তরে একটি ব্যাখ্যা যুক্ত করেছি।
গুন্নার কার্লসন

3
এটি জুলাই 2015 এবং এটি আর কাজ করে না। (ত্রুটি: "তাদের ব্যবহারকারীর দ্বারা ব্যবহারকারীদের জিজ্ঞাসা করা যায় না")
ফ্লিম

20

চিত্রের URL পেতে, বাইনারি সামগ্রী নয়:

$url = "http://graph.facebook.com/$fbId/picture?type=$size";

$headers = get_headers($url, 1);

if( isset($headers['Location']) )
    echo $headers['Location']; // string
else
    echo "ERROR";

আপনাকে অবশ্যই আপনার ফেসবুক আইডি ব্যবহার করতে হবে, ব্যবহারকারীর নাম নয়। আপনি নিজের ফেসবুক আইডিটি সেখানে পেতে পারেন:

http://findmyfbid.com/


1
এটি জুলাই ২০১৫ এবং এটি আর কাজ করে না (ত্রুটি: "ব্যবহারকারীদের ব্যবহারকারীদের দ্বারা জিজ্ঞাসা করা যায় না")
ফ্লিম

3
আপনি এটি সব ভুল বন্ধু পেয়েছেন :) এটি আপনার ফেসবুক আইডি, ব্যবহারকারীর নাম সন্ধানীফবিড
ডট

1
এখানে সেরা। এটি অবশ্যই পাগল, আমি শরীরে ডেটা পাওয়ার চেষ্টা করেছি এবং তারপরে ডেটা হাজির
হব

19

আপনার সার্ভারে পূর্ণ আকারের প্রোফাইল চিত্রটি সংরক্ষণ করার জন্য সহজ এক-লাইন কোড।

<?php

copy("https://graph.facebook.com/FACEBOOKID/picture?width=9999&height=9999", "picture.jpg");

?>

কেবলমাত্র php.ini এ ওপেনসেল সক্ষম করা থাকলে এটি কাজ করবে।


এটি জুলাই ২০১৫ এবং এটি আর কাজ করে না (ত্রুটি: "ব্যবহারকারীদের ব্যবহারকারীদের দ্বারা জিজ্ঞাসা করা যায় না")
ফ্লিম

হ্যাঁ, ভি 1.0 কলগুলি 30 এপ্রিল 2015 এর পরে কাজ করা বন্ধ করবে the ব্যবহারকারী আপনার অ্যাপ্লিকেশনটিকে অনুমতি না দিলে আপনি অ্যাপ্লিকেশন নির্দিষ্ট আইডি পেতে পারবেন না
আর্মান্ড

10

এটিকে গৃহীত উত্তরের মন্তব্য হিসাবে যুক্ত করা হয়েছে, তবে এটির আরও দীর্ঘতর ব্যাখ্যা প্রাপ্য বলে মনে হয়েছে। 2015 সালের এপ্রিল থেকে শুরু করে এটি সম্ভবত কয়েকবার উত্থাপিত হবে।

গ্রাফিক অপির ভি 2 হিসাবে স্বীকৃত উত্তরটি আর ব্যবহারকারীর নাম ব্যবহার করে কাজ করে না। সুতরাং এখন আপনার প্রথমে ইউজারআইড দরকার এবং এটি পেতে আপনি আর ব্যবহারকারীর নাম ব্যবহার করতে পারবেন না। বিষয়গুলিকে আরও জটিল করার জন্য, গোপনীয়তার কারণে, ফেসবুক এখন ব্যবহারকারীদের প্রতি অ্যাপ্লিকেশন পরিবর্তন করছে (দেখুন https://developers.facebook.com/docs/ راف-api/references/v2.2/user/ এবং https: //developers.facebook .com / ডক্স / অ্যাপ্লিকেশন / আপগ্রেডিং / # আপগ্রেডিং_ভি 2_0_ ব্যবহারকারীর_আইডি ), যাতে আপনি ব্যবহার করতে পারবেন এমন কোনও ব্যবহারকারী পুনরুদ্ধার করতে আপনার একধরণের যথাযথ প্রমাণীকরণ থাকতে হবে। প্রযুক্তিগতভাবে প্রোফাইল পিকটি এখনও সর্বজনীন এবং / ইউজারআইডি / ছবিতে উপলব্ধ ( https://developers.facebook.com/docs/ographic-api/references/v2.0/user/picture এ ডক্স দেখুন এবং এই উদাহরণ ব্যবহারকারী: http: //graph.facebook.com/v2.2/4/picture?redirect=0) তবে কোনও ব্যবহারকারীর স্ট্যান্ডার্ড ইউজারিড সন্ধান করা কেবল তাদের প্রোফাইলের ভিত্তিতে অসম্ভব বলে মনে হচ্ছে - আপনার অ্যাপ্লিকেশনটির সাথে আমার অ্যাপ্লিকেশনটির সাথে তাদের মিথস্ক্রিয়া অনুমোদনের প্রয়োজন হবে (যা কেবলমাত্র তাদের এফবি প্রোফাইল লিঙ্কের পাশে একটি প্রোফাইল পিক দেখানো) ওভারকিল।

যদি কেউ ব্যবহারকারীর নাম ভিত্তিক প্রোফাইল পিক পাওয়ার কোনও উপায় বের করে ফেলেছে বা বিকল্পভাবে, কোনও প্রোফাইল পিক পুনরুদ্ধার করতে ব্যবহার করার জন্য কীভাবে কোনও ইউজারিড (এমনকি বিকল্প বিকল্প) কীভাবে পাবেন, দয়া করে ভাগ করুন! ইতিমধ্যে, পুরানো গ্রাফ url এখনও এপ্রিল 2015 পর্যন্ত কাজ করে।


9

একটি উপায় হ'ল গ্যামলেট তার উত্তরে পোস্ট করা কোডটি ব্যবহার করুন :

  • এটি হিসাবে সংরক্ষণ করুন curl.php

  • তারপরে আপনার ফাইলটিতে:

    require 'curl.php';
    
    $photo="https://graph.facebook.com/me/picture?access_token=" . $session['access_token'];
    $sample = new sfFacebookPhoto;
    $thephotoURL = $sample->getRealUrl($photo);
    echo $thephotoURL;

আমি ভেবেছিলাম আমি এটি পোস্ট করব, কারণ বিবরণগুলি বের করতে আমার কিছুটা সময় লেগেছে ... প্রোফাইল চিত্রগুলি সর্বজনীন হলেও আপনি যখন এটি কার্ল করবেন তখন এটি পেতে আপনার সেখানে অ্যাক্সেস টোকেন থাকা দরকার ।


8

এটা করার উপায় আছে;)

" Http://it.toolbox.com/wiki/index.php/Use_curl_from_PHP_-_ প্রসেসিং_গ্রাহী_সাহক " ধন্যবাদ :

<?php

    /**
     * Facebook user photo downloader
     */

    class sfFacebookPhoto {

        private $useragent = 'Loximi sfFacebookPhoto PHP5 (cURL)';
        private $curl = null;
        private $response_meta_info = array();
        private $header = array(
                "Accept-Encoding: gzip,deflate",
                "Accept-Charset: utf-8;q=0.7,*;q=0.7",
                "Connection: close"
            );

        public function __construct() {
            $this->curl = curl_init();
            register_shutdown_function(array($this, 'shutdown'));
        }

        /**
         * Get the real URL for the picture to use after
         */
        public function getRealUrl($photoLink) {
            curl_setopt($this->curl, CURLOPT_HTTPHEADER, $this->header);
            curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, false);
            curl_setopt($this->curl, CURLOPT_HEADER, false);
            curl_setopt($this->curl, CURLOPT_USERAGENT, $this->useragent);
            curl_setopt($this->curl, CURLOPT_CONNECTTIMEOUT, 10);
            curl_setopt($this->curl, CURLOPT_TIMEOUT, 15);
            curl_setopt($this->curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
            curl_setopt($this->curl, CURLOPT_URL, $photoLink);

            //This assumes your code is into a class method, and
            //uses $this->readHeader as the callback function.
            curl_setopt($this->curl, CURLOPT_HEADERFUNCTION, array(&$this, 'readHeader'));
            $response = curl_exec($this->curl);
            if (!curl_errno($this->curl)) {
                $info = curl_getinfo($this->curl);
                var_dump($info);
                if ($info["http_code"] == 302) {
                    $headers = $this->getHeaders();
                    if (isset($headers['fileUrl'])) {
                        return $headers['fileUrl'];
                    }
                }
            }
            return false;
        }


        /**
         * Download Facebook user photo
         *
         */
        public function download($fileName) {
            curl_setopt($this->curl, CURLOPT_HTTPHEADER, $this->header);
            curl_setopt($this->curl, CURLOPT_RETURNTRANSFER, true);
            curl_setopt($this->curl, CURLOPT_HEADER, false);
            curl_setopt($this->curl, CURLOPT_USERAGENT, $this->useragent);
            curl_setopt($this->curl, CURLOPT_CONNECTTIMEOUT, 10);
            curl_setopt($this->curl, CURLOPT_TIMEOUT, 15);
            curl_setopt($this->curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
            curl_setopt($this->curl, CURLOPT_URL, $fileName);
            $response = curl_exec($this->curl);
            $return = false;
            if (!curl_errno($this->curl)) {
                $parts = explode('.', $fileName);
                $ext = array_pop($parts);
                $return = sfConfig::get('sf_upload_dir') . '/tmp/' . uniqid('fbphoto') . '.' . $ext;
                file_put_contents($return, $response);
            }
            return $return;
        }

        /**
         * cURL callback function for reading and processing headers.
         * Override this for your needs.
         *
         * @param object $ch
         * @param string $header
         * @return integer
         */
        private function readHeader($ch, $header) {

            //Extracting example data: filename from header field Content-Disposition
            $filename = $this->extractCustomHeader('Location: ', '\n', $header);
            if ($filename) {
                $this->response_meta_info['fileUrl'] = trim($filename);
            }
            return strlen($header);
        }

        private function extractCustomHeader($start, $end, $header) {
            $pattern = '/'. $start .'(.*?)'. $end .'/';
            if (preg_match($pattern, $header, $result)) {
                return $result[1];
            }
            else {
                return false;
            }
        }

        public function getHeaders() {
            return $this->response_meta_info;
        }

        /**
         * Cleanup resources
         */
        public function shutdown() {
            if($this->curl) {
                curl_close($this->curl);
            }
        }
    }

8

ওয়ার্কিং পিএইচপি (এইচটিটিপি জিইটি) এপ্রিল 2015 থেকে সমাধান (পিএইচপি 5 এসডিকে ছাড়াই):

function get_facebook_user_avatar($fbId){
        $json = file_get_contents('https://graph.facebook.com/v2.5/'.$fbId.'/picture?type=large&redirect=false');
        $picture = json_decode($json, true);
        return $picture['data']['url'];
}

আপনি প্যারামিটারে 'টাইপ' পরিবর্তন করতে পারেন:

স্কয়ার:

সর্বোচ্চ পিক্সেল এবং প্রস্থের উচ্চতা।

ছোট

সর্বোচ্চ পিক্সেল প্রস্থ এবং সর্বোচ্চ পিক্সেলের সর্বোচ্চ উচ্চতা।

সাধারণ

সর্বোচ্চ পিক্সেল এবং সর্বোচ্চ 300 পিক্সেল উচ্চতা প্রস্থ।

বড়

সর্বোচ্চ 200 পিক্সেলের প্রস্থ এবং সর্বোচ্চ 600 পিক্সেলের উচ্চতা।


7

আমি ভাবছিলাম - সম্ভবত আইডি একটি দরকারী সরঞ্জাম হবে। যখনই কোনও ব্যবহারকারী কোনও নতুন অ্যাকাউন্ট তৈরি করে তার একটি উচ্চতর আইডি পাওয়া উচিত। আমি গুগল করে দেখতে পেলাম যে আইডি দ্বারা অ্যাকাউন্ট তৈরির তারিখটি অনুমান করার একটি পদ্ধতি রয়েছে এবং মেটাডাটিসায়েন্স ডটকম থেকে ম্যাসউদ সেফি এ সম্পর্কে কিছু ভাল তথ্য সংগ্রহ করেছিলেন।

এখানে চিত্র বিবরণ লিখুন

এই নিবন্ধটি পড়ুন:

http://metadatascience.com/2013/03/11/inferring-facebook-account-creation-date-from-facebook-user-id/

এবং ডাউনলোড করার জন্য এখানে কয়েকটি আইডি রয়েছে:

http://metadatascience.com/2013/03/14/lookup-table-for-inferring-facebook-account-creation-date-from-facebook-user-id/


1
কিভাবে এই প্রশ্নের উত্তর দেয়?
ফ্লিম 13

6

ব্লগ পোস্টটি একটি ফেসবুক গ্রাফ অবজেক্টের ছবি গ্র্যাব করতে পারে অন্য কোনও সমাধানের প্রস্তাব। টিউটোরিয়ালে কোডটি ফেসবুকের গ্রাফ এপিআই এবং এর পিএইচপি এসডিকে লাইব্রেরির সাথে ব্যবহার করুন।

... এবং ফাইল_জেট_কন্টেন্টগুলি ব্যবহার না করার চেষ্টা করুন (যদি আপনি পরিণতির মুখোমুখি হতে প্রস্তুত না হন - ফাইল_জেট_কন্টেন্ট বনাম কার্ল দেখুন )।


4

আপনি প্রোফাইল ছবির আকার সম্পর্কে উদ্বিগ্ন? পিএইচপি ব্যবহার করে ফেসবুকের সাথে লগইন প্রয়োগের সময়। আমরা আপনাকে ফেইসবুক পিএইচপি এসডিকে বড় আকারের প্রোফাইল ছবি পাওয়ার সহজ উপায়টি দেখাব। এছাড়াও, আপনি ফেসবুক প্রোফাইলের কাস্টম আকারের চিত্র পেতে পারেন।

নিম্নলিখিত কোডের লাইনটি ব্যবহার করে প্রোফাইল চিত্রের মাত্রা সেট করুন।

$ ব্যবহারকারীর প্রোফাইলে = $ ফেসবুক-> এপিআই ('/ আমি? ফিল্ডস = ছবি.উইথথ (400)। উচ্চতা (400)');

এই পোস্টটি দেখুন: http: //www.codexworld.com/how-to-guides/get-large-size-profile-picture-in-facebook-php-sdk/


3

@NaturalBornCamper,

দুর্দান্ত কোড! এই জাতীয় প্রক্রিয়াটির জন্য এখানে একটি ক্লিন-কাট কোড ফাংশন!

function get_raw_facebook_avatar_url($uid)
{
    $array = get_headers('https://graph.facebook.com/'.$uid.'/picture?type=large', 1);
    return (isset($array['Location']) ? $array['Location'] : FALSE);
}

এটি কাঁচা ফেসবুক অবতার চিত্র URL টি ফিরিয়ে দেবে । এটির সাথে আপনি যা খুশি করতে নির্দ্বিধায় করুন!


3
URI  = https://graph.facebook.com/{}/picture?width=500'.format(uid)

আপনি অনলাইন ফেসবুক আইডি সন্ধানকারী সরঞ্জামের মাধ্যমে প্রোফাইল ইউআরআই পেতে পারেন

আপনি ছোট, সাধারণ, বড়, বর্গক্ষেত্রের সম্ভাব্য মানগুলির সাথে টাইপ প্যারামও পাস করতে পারেন।

পড়ুন কর্মকর্তা ডকুমেন্টেশন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.