Instagram API மாற்றங்களுக்கு ஏற்ப: நீங்கள் தெரிந்து கொள்ள வேண்டியது
Instagram சமீபத்தில் அதன் அடிப்படை டிஸ்ப்ளே APIஐ நீக்குவதாக அறிவித்தது, பல டெவலப்பர்கள் மாற்று வழியைக் கண்டுபிடிக்க துடிக்கிறார்கள். பல ஆண்டுகளாக, இந்த API பொது சுயவிவரத் தகவல் மற்றும் இடுகைகளை அணுகுவதற்கான ஒரு தீர்வாக உள்ளது. அதை நம்பியவர்களில் நீங்களும் இருந்தால், மாற்றியமைக்க வேண்டிய அழுத்தத்தை நீங்கள் உணரலாம். 😟
ஒரு சிறு வணிகத்திற்கான சமூக ஊடக மேலாளராக, எங்கள் பகுப்பாய்வு டாஷ்போர்டிற்கான நிகழ்நேரத் தரவைப் பெற அடிப்படை காட்சி API ஐ ஒருமுறை பெரிதும் நம்பியிருந்தேன். அதன் எளிமை ஒப்பிட முடியாதது, எனது பாத்திரத்தின் மற்ற அம்சங்களில் கவனம் செலுத்த அனுமதித்தது. இருப்பினும், அதன் சூரியன் மறையும் செய்தி ஒரு விழிப்புணர்வை ஏற்படுத்தியது. செயல்பாட்டில் சமரசம் செய்யாமல், அத்தகைய முக்கியமான கருவியை நான் எவ்வாறு மாற்றுவது?
அதிர்ஷ்டவசமாக, இன்ஸ்டாகிராம் கிராஃப் ஏபிஐ போன்ற பிற ஏபிஐ விருப்பங்களை வழங்குகிறது, ஆனால் அதன் சிக்கல்களை வழிசெலுத்துவது மிகப்பெரியதாக உணரலாம். டோக்கன்களைப் பெறுவது முதல் அனுமதிகளைக் கையாள்வது வரை, செயல்முறை முன்பு போல் எளிமையானது அல்ல. இருப்பினும், மாற்றத்தை எளிதாக்கும் தீர்வுகள் மற்றும் மூன்றாம் தரப்பு கருவிகள் உள்ளன.
இந்தக் கட்டுரையில், Instagram Basic Display APIக்கான நடைமுறை மாற்றுகளை ஆராய்வோம். நீங்கள் ஒரு டெவலப்பராக இருந்தாலும் அல்லது வணிக உரிமையாளராக இருந்தாலும் சரி, வேகமாக மாறிவரும் இந்த சுற்றுச்சூழலில் முன்னோக்கிச் செல்வதற்கான நடவடிக்கைக்கான பரிந்துரைகளையும் உதவிக்குறிப்புகளையும் நீங்கள் காணலாம். 🌟
கட்டளை | பயன்பாட்டின் உதாரணம் |
---|---|
axios.post() | Instagram இன் OAuth சேவையுடன் அணுகல் டோக்கனுக்கான அங்கீகாரக் குறியீட்டைப் பரிமாறிக்கொள்வதற்காக Node.js பின்தளத்தில் ஸ்கிரிப்ட்டில் POST கோரிக்கையை அனுப்பப் பயன்படுகிறது. |
res.redirect() | பின்தளத்தில் OAuth ஓட்டத்தைத் தொடங்க பயனரை Instagram இன் அங்கீகார URL க்கு திருப்பிவிடும். |
fetch() | இன்ஸ்டாகிராம் கிராஃப் ஏபிஐயிலிருந்து பயனர் தரவை மீட்டெடுக்க ஃப்ரண்ட்எண்ட் ஸ்கிரிப்ட்டில் ஏபிஐ அழைப்புகளைச் செய்வதற்கான ஜாவாஸ்கிரிப்ட் முறை. |
request(app).get() | Jest சோதனை அமைப்பின் ஒரு பகுதியாக, அங்கீகாரம் மற்றும் டோக்கன் பரிமாற்றத்திற்கான Node.js இறுதிப்புள்ளிகளை சோதிக்க HTTP GET கோரிக்கைகளை இது உருவகப்படுத்துகிறது. |
supertest | Node.js பின்தளத்தில் HTTP எண்ட்பாயிண்ட்டுகளை சோதிப்பதற்காக பயன்படுத்தப்படும் நூலகம், API செயல்பாட்டின் சரிபார்ப்பை செயல்படுத்துகிறது. |
JSON.stringify() | பெறப்பட்ட தரவை, ஃபிரண்ட்எண்ட் ஸ்கிரிப்ட்டில் காட்சிப்படுத்த படிக்கக்கூடிய JSON சரமாக வடிவமைக்கிறது, இது பிழைத்திருத்தம் மற்றும் வெளியீட்டு விளக்கக்காட்சிக்கு பயனுள்ளதாக இருக்கும். |
res.status() | கோரிக்கையின் வெற்றி அல்லது தோல்வியைக் குறிக்க Node.js பின்தளத்தில் HTTP மறுமொழி நிலைக் குறியீட்டை அமைக்கிறது. |
scope=user_profile,user_media | அங்கீகாரச் செயல்பாட்டின் போது சுயவிவரம் மற்றும் மீடியா தரவை அணுக Instagram OAuth URL இல் தேவையான அனுமதிகளைக் குறிப்பிடுகிறது. |
authorization_code | OAuth டோக்கன் பரிமாற்ற செயல்பாட்டில் பயன்படுத்தப்படும் மானிய வகை, Instagram இலிருந்து அணுகல் டோக்கனைப் பெறுவதற்கான குறிப்பிட்ட ஓட்டத்தைக் குறிக்கிறது. |
describe() | தொடர்புடைய யூனிட் சோதனைகளை குழுவாக்க Jest இல் பயன்படுத்தப்படுகிறது, இது பின்தள API செயல்பாட்டிற்கான சோதனை நிகழ்வுகளை நிர்வகிப்பதையும் ஒழுங்கமைப்பதையும் எளிதாக்குகிறது. |
இன்ஸ்டாகிராமின் அடிப்படை காட்சி APIக்கான மாற்றுகளை எவ்வாறு செயல்படுத்துவது மற்றும் பயன்படுத்துவது
எடுத்துக்காட்டில் வழங்கப்பட்ட முதல் ஸ்கிரிப்ட் Node.js பின்தளம் இது Instagram வரைபட API ஐப் பயன்படுத்தி OAuth 2.0 அங்கீகார ஓட்டத்தை எளிதாக்குகிறது. அணுகல் டோக்கனைப் பெறுவது போன்ற பாதுகாப்பான தரவுப் பரிமாற்றங்களை நிர்வகிப்பதில் இந்தப் பின்தளம் முக்கியப் பங்கு வகிக்கிறது. பயனர்களை இன்ஸ்டாகிராமின் அங்கீகார பக்கத்திற்கு திருப்பி விடுவதன் மூலம் இது தொடங்குகிறது res.redirect() கட்டளை, பாதுகாப்பான மற்றும் பயனர்-அங்கீகரிக்கப்பட்ட உள்நுழைவு செயல்முறையை உறுதி செய்கிறது. பயனர் அனுமதிகளை அங்கீகரித்ததும், குறிப்பிட்ட திருப்பியனுப்பும் URI க்கு அங்கீகாரக் குறியீட்டை Instagram திருப்பி அனுப்புகிறது, பின்னர் அதை பயன்படுத்தி அணுகல் டோக்கனுக்காக மாற்றப்படும். axios.post(). இந்த டோக்கன் மிகவும் முக்கியமானது, ஏனெனில் இது பயனர் தரவைப் பாதுகாப்பாகப் பெற அனுமதிக்கிறது. 🌟
பின்தள ஸ்கிரிப்ட்டின் இரண்டாம் பகுதி சாத்தியமான பிழைகளைக் கையாள்வது மற்றும் பாதுகாப்பான டோக்கன் நிர்வாகத்தை பராமரிப்பதில் கவனம் செலுத்துகிறது. உதாரணமாக, டோக்கன் பரிமாற்ற செயல்முறை தோல்வியுற்றால், தி res.status() முறையானது பொருத்தமான HTTP நிலைக் குறியீட்டை வழங்க பயன்படுகிறது, இது கிளையண்டிற்கு பிழையை சமிக்ஞை செய்கிறது. இது சிறந்த பிழை கையாளுதல் மற்றும் மிகவும் வலுவான அமைப்பை உறுதி செய்கிறது. ஒரு சிறு வணிகத்திற்காக நான் ஒரு பகுப்பாய்வுக் கருவியை உருவாக்கியது இதற்கு நிஜ உலக உதாரணம். இன்ஸ்டாகிராம் அதன் அடிப்படை காட்சி API ஐ நிறுத்தியபோது, இந்த பின்தளத்தை செயல்படுத்துவது எனது குழுவின் பணிப்பாய்வுகளுக்கு குறைந்தபட்ச இடையூறுகளுடன் செயல்பாட்டை பராமரிக்க அனுமதித்தது.
முன்பகுதியில், இன்ஸ்டாகிராம் கிராஃப் ஏபிஐ இறுதிப்புள்ளிகளிலிருந்து பயனர் தரவை மீட்டெடுக்க, வழங்கப்பட்ட ஸ்கிரிப்ட் எடுத்து ஏபிஐ ஐப் பயன்படுத்துகிறது. உலாவியில் நேரடியாக தரவு காட்டப்பட வேண்டிய அல்லது உள்நுழைய வேண்டிய இலகுரக பயன்பாடுகளுக்கு இந்த அணுகுமுறை மிகவும் பயனுள்ளதாக இருக்கும். தரவைப் பெற்ற பிறகு, பதில் மனிதனால் படிக்கக்கூடிய JSON வடிவமாக மாற்றப்படுகிறது JSON.stringify(), தகவலை வழங்குவதை எளிதாக்குகிறது. எடுத்துக்காட்டாக, வாடிக்கையாளரின் பொது Instagram கணக்கிற்கான பயனர்பெயர்கள் மற்றும் கணக்கு வகைகளை நேரடியாக டாஷ்போர்டில் காட்ட இந்த ஸ்கிரிப்டைப் பயன்படுத்தினேன். இது சிக்கலான பின்தள அமைப்புகளின் தேவையை நீக்கியது, சிறிய அளவிலான திட்டங்களுக்கு இது மிகவும் திறமையானது. 😊
இறுதியாக, எங்களின் ஏபிஐ எண்ட்பாயிண்ட்களின் சரியான தன்மையை சரிபார்ப்பதற்கான இன்றியமையாத கருவியான ஜெஸ்டைப் பயன்படுத்தி பின்தள ஸ்கிரிப்ட்களில் யூனிட் சோதனைகள் செயல்படுத்தப்பட்டன. போன்ற கட்டளைகள் விவரிக்க () குழு சோதனை வழக்குகள் தர்க்கரீதியாக, அதே நேரத்தில் கோரிக்கை(app).get() சேவையகத்திற்கு HTTP அழைப்புகளை உருவகப்படுத்துகிறது. அங்கீகாரம் மற்றும் டோக்கன் பரிமாற்ற செயல்முறைகள் இரண்டும் வெவ்வேறு நிலைமைகளின் கீழ் குறைபாடற்ற முறையில் செயல்படுவதை இது உறுதி செய்தது. உதாரணமாக, நேரலை வரிசைப்படுத்தலின் போது ஒரு சிக்கலைப் பிழைத்திருத்தம் செய்யும் போது, இந்தச் சோதனைகள் OAuth அமைப்பில் காணாமல் போன உள்ளமைவைக் கண்டறிய உதவியது, சரிசெய்தலில் மணிநேரங்களைச் சேமிக்கிறது. இந்த ஸ்கிரிப்டுகள் மட்டுப்படுத்தல் மற்றும் அளவிடுதல் ஆகியவற்றை மனதில் கொண்டு வடிவமைக்கப்பட்டுள்ளன, அவை வெவ்வேறு திட்டங்களில் மீண்டும் பயன்படுத்தப்படலாம் அல்லது மிகவும் சிக்கலான பயன்பாடுகளுக்கு அளவிடப்படலாம்.
Instagram அடிப்படை காட்சி APIக்கான மாற்றீட்டைக் கண்டறிதல்
கிராஃப் ஏபிஐ மூலம் இன்ஸ்டாகிராம் தரவைப் பெற பின்தள தீர்வுக்கு Node.js மற்றும் Express ஐப் பயன்படுத்துதல்
// Import required modules
const express = require('express');
const axios = require('axios');
const app = express();
const PORT = 3000;
// Your Instagram App Credentials
const CLIENT_ID = 'your-client-id';
const CLIENT_SECRET = 'your-client-secret';
const REDIRECT_URI = 'your-redirect-uri';
// Endpoint to handle authentication
app.get('/auth', (req, res) => {
const authUrl = `https://api.instagram.com/oauth/authorize` +
`?client_id=${CLIENT_ID}&redirect_uri=${REDIRECT_URI}&scope=user_profile,user_media&response_type=code`;
res.redirect(authUrl);
});
// Endpoint to handle token exchange
app.get('/callback', async (req, res) => {
const { code } = req.query;
try {
const tokenResponse = await axios.post('https://api.instagram.com/oauth/access_token', {
client_id: CLIENT_ID,
client_secret: CLIENT_SECRET,
grant_type: 'authorization_code',
redirect_uri: REDIRECT_URI,
code
});
const accessToken = tokenResponse.data.access_token;
res.send(`Access Token: ${accessToken}`);
} catch (error) {
res.status(500).send('Error exchanging token');
}
});
// Start the server
app.listen(PORT, () => console.log(`Server running on http://localhost:${PORT}`));
Frontend பயன்பாடுகளுக்கான Instagram அடிப்படை காட்சி API ஐ மாற்றுகிறது
Instagram வரைபட API மூலம் பயனர் தரவை மீட்டெடுக்க JavaScript Fetch API ஐப் பயன்படுத்துதல்
// Fetch access token (Replace with your actual token)
const accessToken = 'your-access-token';
// Define the API endpoint
const apiUrl = `https://graph.instagram.com/me?fields=id,username,account_type&access_token=${accessToken}`;
// Fetch user data
fetch(apiUrl)
.then(response => {
if (!response.ok) throw new Error('Network response was not ok');
return response.json();
})
.then(data => {
console.log('User Data:', data);
document.getElementById('output').innerText = JSON.stringify(data, null, 2);
})
.catch(error => console.error('Error fetching user data:', error));
பின்நிலை தீர்வுக்கான அலகு சோதனைகள்
Node.js API ஒருங்கிணைப்பை சரிபார்க்க Jest ஐப் பயன்படுத்துகிறது
// Import modules for testing
const request = require('supertest');
const app = require('./app');
// Test authentication endpoint
describe('GET /auth', () => {
it('should redirect to Instagram auth page', async () => {
const res = await request(app).get('/auth');
expect(res.statusCode).toBe(302);
});
});
// Test callback endpoint
describe('GET /callback', () => {
it('should handle token exchange', async () => {
const res = await request(app).get('/callback?code=testcode');
expect(res.statusCode).toBe(200);
});
});
Instagram இன் அடிப்படை காட்சி APIக்கான நடைமுறை மாற்றுகளை ஆராய்கிறது
Instagram இன் அடிப்படை காட்சி API இலிருந்து மாறும்போது, மிகவும் கவனிக்கப்படாத ஆனால் முக்கிய அம்சங்களில் ஒன்று தரவு தனியுரிமை மற்றும் பாதுகாப்பை உறுதி செய்வதாகும். இன்ஸ்டாகிராம் கிராஃப் ஏபிஐ மிகவும் சிக்கலானதாக இருந்தாலும், இந்த பகுதியில் குறிப்பிடத்தக்க மேம்பாடுகளை வழங்குகிறது. எடுத்துக்காட்டாக, அடிப்படை காட்சி API பொதுத் தரவுகளுக்கு பரந்த அணுகலை அனுமதித்தாலும், வரைபட API ஆனது OAuth ஸ்கோப்புகள் வழியாக கடுமையான அனுமதிகளைக் கட்டாயமாக்குகிறது user_profile மற்றும் user_media. இந்த நோக்கங்கள் தேவையான தரவு மட்டுமே அணுகப்படுவதை உறுதிசெய்கிறது, இது அதிகப்படியான அபாயத்தைக் குறைக்கிறது. முக்கியமான பயனர் தகவலை நிர்வகிக்கும் வணிகங்களுக்கு, இந்த மாற்றம் ஒரு தெளிவான நன்மை. 🔒
இன்ஸ்டாகிராம் கிராஃப் ஏபிஐயின் மற்றொரு மதிப்புமிக்க அம்சம், வணிகக் கணக்குகளுக்கான விரிவான அளவீடுகள் மற்றும் நுண்ணறிவுகளைக் கையாளும் திறன் ஆகும். எடுத்துக்காட்டாக, அடிப்படை காட்சி API ஆதரிக்காத விருப்பங்கள், கருத்துகள் மற்றும் ரீச் போன்ற நிச்சயதார்த்த அளவீடுகளை Graph API பெற முடியும். சமூக ஊடக உத்திகளை மேம்படுத்துவதை நோக்கமாகக் கொண்ட வணிகங்களுக்கு இந்த நுண்ணறிவு முக்கியமானது. நான் பணிபுரிந்த ஒரு பகுப்பாய்வு நிறுவனம் கிராஃப் ஏபிஐக்கு மாற்றப்பட்டது மற்றும் இந்த அம்சங்களுக்கு நன்றி, பிரச்சார அறிக்கையின் துல்லியத்தில் குறிப்பிடத்தக்க முன்னேற்றங்களைக் கண்டது.
இறுதியாக, மூன்றாம் தரப்பு நூலகங்கள் மற்றும் சேவைகள் அடிப்படை காட்சி API இன் நீக்கத்தால் உருவாக்கப்பட்ட இடைவெளியைக் குறைக்க வெளிப்பட்டுள்ளன. Python அல்லது instaloader க்கான PyInstagram போன்ற கருவிகள் வரைபட API ஒருங்கிணைப்பை எளிதாக்குகிறது, இது டெவலப்பர்களுக்கு அணுகக்கூடியதாக இருக்கும். எடுத்துக்காட்டாக, ஒரு சிறிய ஈ-காமர்ஸ் கிளையண்டிற்கான பிந்தைய மீட்டெடுப்பை தானியங்குபடுத்தும் திட்டத்தின் போது, இந்த நூலகங்களைப் பயன்படுத்துவது நேரத்தையும் முயற்சியையும் மிச்சப்படுத்தியது, இது API சிக்கல்களுக்குப் பதிலாக உள்ளடக்க உருவாக்கத்தில் கவனம் செலுத்த குழுவை அனுமதிக்கிறது. வல்லுநர்கள் அல்லாதவர்களும் இன்ஸ்டாகிராம் தரவை திறமையாக அணுகுவதை இந்த ஆதாரங்கள் உறுதி செய்கின்றன. 🌟
Instagram அடிப்படை காட்சி API ஐ மாற்றுவது பற்றிய பொதுவான கேள்விகள்
- Basic Display APIக்கு சிறந்த மாற்று எது?
- தி Instagram Graph API பயனர் மற்றும் மீடியா தரவை மீட்டெடுப்பதற்கான வலுவான அம்சங்களை வழங்குவதால் இது சிறந்த மாற்றாகும்.
- வரைபட APIக்கான குறிப்பிட்ட அனுமதிகள் தேவையா?
- ஆம், போன்ற அனுமதிகளை நீங்கள் கோர வேண்டும் user_profile மற்றும் user_media OAuth அங்கீகார செயல்முறையின் போது.
- வரைபட API பயன்பாட்டை எளிதாக்க மூன்றாம் தரப்பு நூலகங்கள் உள்ளதா?
- ஆம், நூலகங்கள் போன்றவை PyInstagram பைத்தானுக்கு மற்றும் instaloader தரவு மீட்டெடுப்பை தானியங்குபடுத்துவதில் உதவி.
- தனிப்பட்ட கணக்குகளுக்கு வரைபட API ஐப் பயன்படுத்தலாமா?
- இல்லை, வரைபட API முதன்மையாக வணிகக் கணக்குகளுக்காக வடிவமைக்கப்பட்டுள்ளது. தனிப்பட்ட கணக்குகள் வரையறுக்கப்பட்ட செயல்பாட்டை மட்டுமே அணுக முடியும்.
- API டோக்கன் காலாவதியை எவ்வாறு நிர்வகிப்பது?
- நீங்கள் பயன்படுத்தலாம் refresh_token டோக்கன் செல்லுபடியை நீட்டிக்க அல்லது உங்கள் ஸ்கிரிப்ட்டில் டோக்கன் புதுப்பிப்புகளை தானியங்குபடுத்துவதற்கான இறுதிப்புள்ளி.
இன்ஸ்டாகிராமின் புதிய ஏபிஐ லேண்ட்ஸ்கேப்பிற்கு ஏற்றது
அடிப்படை டிஸ்ப்ளே API இன் தேய்மானம் ஒரு குறிப்பிடத்தக்க மாற்றத்தைக் குறிக்கிறது, டெவலப்பர்கள் நவீன மாற்றுகளை ஆராய வேண்டும் வரைபட API. இது மிகவும் சிக்கலான செயலாக்க செயல்முறையை கோரும் அதே வேளையில், அதன் அம்சங்கள் அளவிடக்கூடிய திட்டங்களுக்கும் மேம்பட்ட நுண்ணறிவுகளுக்கும் வலுவான அடித்தளத்தை வழங்குகிறது.
வணிகங்கள் மற்றும் தனிநபர்களுக்கு ஒரே மாதிரியாக, மாற்றம் சவாலானதாகத் தோன்றலாம், ஆனால் மூன்றாம் தரப்பு கருவிகள் மற்றும் நூலகங்களை மேம்படுத்துவது அதை தடையற்றதாக மாற்றும். இந்த மாற்றங்களைத் தழுவி, சிறந்த நடைமுறைகளைப் பயன்படுத்துவதன் மூலம், இயங்குதளக் கொள்கைகளுக்கு இணங்கும்போது பயனர்கள் அத்தியாவசிய Instagram தரவைத் தொடர்ந்து அணுகலாம். 😊
முக்கிய ஆதாரங்கள் மற்றும் குறிப்புகள்
- Instagram வரைபட API மற்றும் அதன் செயல்பாடுகள் பற்றிய விவரங்கள் அதிகாரப்பூர்வ Instagram டெவலப்பர் ஆவணத்திலிருந்து பெறப்பட்டது. Instagram API ஆவணம் .
- OAuth செயல்படுத்தல் மற்றும் சிறந்த நடைமுறைகள் பற்றிய நுண்ணறிவு OAuth 2.0 கட்டமைப்பு வழிகாட்டியில் இருந்து குறிப்பிடப்பட்டுள்ளது. OAuth 2.0 வழிகாட்டி .
- PyInstagram மற்றும் instaloader போன்ற நூலகங்களைப் பயன்படுத்துவதற்கான நடைமுறை எடுத்துக்காட்டுகள் சமூகம் சார்ந்த ஆதாரங்களிலிருந்து தழுவி எடுக்கப்பட்டது. இன்ஸ்டாலோடர் கிட்ஹப் களஞ்சியம் .
- Instagram API மாற்றங்களைக் கையாள்வதற்கான விவாதங்களும் தீர்வுகளும் Stack Overflow போன்ற மன்றங்களிலிருந்து சேகரிக்கப்பட்டன. ஸ்டாக் ஓவர்ஃப்ளோ .