2015-10-06 46 views
0

基於evernote-sdk-js的精簡版本,在phonegap應用程序中,我可以使用noteStore檢索筆記列表。 功能得到NoteStore:無法與cordova app中的evernote api共享筆記

createNoteStore : function(options) { 
        var noteStoreURL = options.edam_noteStoreUrl; 
        var noteStoreTransport = new Thrift.BinaryHttpTransport(
          noteStoreURL); 
        var noteStoreProtocol = new Thrift.BinaryProtocol(
          noteStoreTransport); 
        return new NoteStoreClient(noteStoreProtocol); 
       }; 

有了這個功能我能夠得到的筆記

function getList(){ 
            var $callback = $.Deferred(); 
        createNoteStore(params).listNotebooks(
          params.oauth_token, function 
    onSuccess(notebooks) { 
           $callback.resolve(notebooks); 
          }, function onerror(error) { 
           $callback.reject(notebooks); 
          }); 
        return $callback; 
} 

現在我希望共享一個註釋,或尋找一些筆記列表通過使用 'findNotesMetadata' 和findNotes關鍵詞,沒有人可與EDAMUserException {錯誤碼:3,參數: 「authenticationToken」}

function Search(word, options, params){ 
            var $callback = $.Deferred(); 
        if (!params) { 
         throw new Error('missing required parametres'); 
        } 
        var filter = new NoteFilter(); 
        filter.words = 'notebook:' + word + ' '; 
        var spec = new NotesMetadataResultSpec(); 
        spec.includeTitle = true; 
        // if !options.noteStore && ! 
        // create 
        api.createNoteStore(params).findNotes(
        params.oauth_token, filter, 0, 100, spec, 
          function onSuccess(notebooks) { 
           $callback.resolve(notebooks); 
          }, function onerror(error) { 
           $callback.reject(error); 
          }); 
        return $callback; 
} 

回答

1

errorCode:3 is PERMISSION_DENIED因此,這可能是因爲您沒有API密鑰的權限。通過基本訪問,您可以列出筆記本,但如果您想訪問筆記,則需要完全訪問權限。有關權限,請參閱this page

您可以在OAuth進程中檢查您的API密鑰的權限。如果是這種情況,請用完全權限重新創建API密鑰將解決您的問題。

+0

謝謝@kentaro,沒錯,我創建了一個具有完全訪問權限的新應用程序。 仍然無法從文檔搜索筆記本(罰款與筆記),但這是另一個問題。謝謝 ! – HoussemFat

相關問題