थोड़ी देर के लिए खोज करने के बाद, मुझे एक एपीआई कॉल के लिए निम्नलिखित समाधान मिलते हैं जिन्हें हटाएं विधि की आवश्यकता होती है।पायथन हटाएं एक बाकी एपीआई (जीएई पर)
पहला प्रयास: (httplib पुस्तकालय)
url = '/v1/users/'+ spotify_user_id +'/playlists/'+ playlist_id +'/tracks'
data = json.dumps({"tracks": [{ "uri" : track_uri }]})
headers = {
'Authorization' : 'Bearer ' + access_token,
'Content-Type' : 'application/json'
}
conn = httplib.HTTPSConnection('api.spotify.com')
conn.request('DELETE', url , data, headers)
resp = conn.getresponse()
content = resp.read()
return json.loads(content)
यह रिटर्न:
{u'error ': {u'status': 400, u'message ': u'Empty JSON शरीर '}}
दूसरा कोशिश:। (urllib2 पुस्तकालय)
url = 'https://api.spotify.com/v1/users/'+ spotify_user_id +'/playlists/'+ playlist_id +'/tracks'
data = json.dumps({"tracks": [{ "uri" : track_uri }]})
headers = {
'Authorization' : 'Bearer ' + access_token,
'Content-Type' : 'application/json'
}
opener = urllib2.build_opener(urllib2.HTTPHandler)
req = urllib2.Request(url, data, headers)
req.get_method = lambda: 'DELETE'
try:
response = opener.open(req).read()
return response
except urllib2.HTTPError as e:
return e
यह रिटर्न:
HTTP 400 ग़लत अनुरोध
मैं अन्य कार्यों जहां JSON काम कर रहा है है, इसलिए मुझे लगता है कि समस्या हटाएँ विधि के साथ है, लेकिन मैं यह काम नहीं कर प्राप्त कर सकते हैं।
इसके अलावा, वेबपैप Google ऐप इंजन पर चल रहा है, इसलिए मैं पैकेट इंस्टॉल नहीं कर सकता, इसलिए मैं पूर्व-स्थापित लाइब्रेरी में रहना चाहता हूं।
किसी के पास GAE पर एक डिलीट अनुरोध करने का एक अच्छा तरीका है? (मुझे डेटा और हेडर दोनों भेजने की ज़रूरत है)
एपीआई स्पॉटिफ़ाई है: developer.spotify.com/web-api/ और मैं प्लेलिस्ट से ट्रैक हटाने की कोशिश कर रहा हूं।
आपके प्रश्न पूछने के प्रयास में बहुत कुछ करने के लिए धन्यवाद। आपने कम से कम एक दिन के लिए एसओ में अपना विश्वास नवीनीकृत कर लिया है। –
आपका दूसरा उदाहरण अजीब दिखता है क्या आपने केवल urlfetch को आजमाया है - यह DELETE विधि का समर्थन करता है। https://cloud.google.com/appengine/docs/python/urlfetch/fetchfunction –
मैंने urlfetch पर उपयोग करने का प्रयास किया है और मुझे यह प्रतिक्रिया मिलती है: {u'error ': {u'status': 400, u 'संदेश': यू 'लक्षण जेएसओएन बॉडी।}} – NBajanca