Я могу получать заметки (реальное содержимое, а не только метаданные) из API-интерфейса Evernote. Однако вызов notestore-> update() всегда дает мне исключение EDAMUserException.Обновление заметки Evernote с помощью Evernote php sdk
Мой PHP код ниже, аргументы самоочевидны:
//add text to note
//if append=true then the text will be appended to the end, else it will be appended to the start
public function addToNote($new_content, $access_token, $note_store, $note_guid, $append = true){
$note = $note_store->getNote($access_token, $note_guid, true, false, false, false);
$note->content +="<en-note>Note updated</en-note>";
$note_store->updateNote($access_token, $note);
}
Я уже сделал много поиска, прежде чем я спросил здесь, и здесь вещи, которые я знаю:
В соответствии с: https://dev.evernote.com/doc/articles/permissions.php в нем говорится, что существует два типа ключей api, один из них является основным доступом, а один для полного доступа, у меня есть полный доступ, это доказано, что исключение не было выбрано во время $ note_store-> getNote (), и я сделал вывод данных из этого вызова, я могу фактически получить содержание примечания.
На той же странице, что и у 1: «Некоторые функции API доступны только для официальных приложений и сервисов Evernote. Эти функции описаны в Справочнике API и будут генерировать исключение EDAMUserException с кодом ошибки PERMISSION_DENIED, если он вызван стороннего приложения ". Я прочитал документацию по API здесь: https://dev.evernote.com/doc/reference/NoteStore.html#Fn_NoteStore_updateNote Он не упоминает, что он заблокирован по умолчанию.
updateNote определенно * не * заблокирован для третьих лиц. Вы можете распечатать код ошибки и параметр для исключения? Обычно они предоставляют больше информации. – akhaku