Sto utilizzando la libreria gdata
Python per eseguire eliminazioni batch di contatti, e ottengo solo "If-Match" o l'attributo etag di If-None-Match o l'attributo etag richiesto ".Ottenere "If-Match o If-None-Match intestazione o ingresso attributo etag richiesto" errori durante l'eliminazione batch contatti
Penso che il problema sia iniziato quando ho dovuto abilitare l'API Contatti nella console (che fino a qualche giorno fa non era richiesta? *).
EDIT:
In realtà non riuscendo sia per l'aggiornamento e l'eliminazione di operazioni. L'inserto in batch funziona correttamente.
provato a specificare l'intestazione If-Match
, ma è ancora in mancanza:
custom_headers = atom.client.CustomHeaders(**{'If-Match': '*'})
request_feed = gdata.contacts.data.ContactsFeed()
request_feed.AddDelete(entry=contact, batch_id_string='delete')
response_feed = self.gd_client.ExecuteBatch(
request_feed,
'https://www.google.com/m8/feeds/contacts/default/full/batch',
custom_headers=custom_headers
)
anche creato un ticket sulla pagina del progetto, ma dubito che permette di scaricare qualsiasi attenzione là.
EDIT 2:
Utilizzando il metodo Batch
con force=True
(che aggiunge solo l'header If-Match: *
) è lo stesso risultato.
response_feed = self.gd_client.Batch(
request_feed,
uri='https://www.google.com/m8/feeds/contacts/default/full/batch',
force=True
)
* Qualcuno può verificare questo? Non ho mai dovuto abilitarlo nella console prima e la mia app era in grado di utilizzare l'API Contatti senza problemi, e credo che non fosse nemmeno disponibile prima. Sono stato sorpreso di vederlo ieri.
iam anche affrontando lo stesso problema, tutti gli aggiornamenti su questo problema –
senza conoscere i dettagli della biblioteca GData, non si dovrebbe passare l'istanza custom_headers alla richiesta in qualche modo? O magari installarlo su 'gd_client'? Dubito che aggiungerà le intestazioni semplicemente creando un'istanza CustomHeaders. – trendels
Ah sì, buona cattura. Quello era un errore di battitura. Modificato. – john2x