6

顧客の Gmail 情報をインポートするために、Gdata ライブラリを備えた Contacts API の 2.0 バージョンを使用しました。このバージョンはサポートされなくなり、V3 に移行しようとしましたが、Gdata が v3 でサポートされていないことがわかり、現在のコードを変更して JavaScript の「Contacts API バージョン 3.0」で動作するように何日も費やしています。

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Gmail Login</title>
        <meta http-equiv="content-type" content="text/html;charset=UTF-8"/>
        <script type="text/javascript" src="http://www.google.com/jsapi"></script>
    </head>
    <body style="margin:0;padding:0;">
        <img src="/images/templates.png" style="display:none;"/>
        <script type="text/javascript">
            google.load("gdata", "2.s");
            google.setOnLoadCallback(function (){
                if(window.location.hash=="") {
                    if(!checkLogin()){
                        logMeIn();
                    } else {
                        var feedUrl = "https://www.google.com/m8/feeds/contacts/default/full";
                        query = new google.gdata.contacts.ContactQuery(feedUrl);
                        query.setMaxResults(5000);
                        myService = new google.gdata.contacts.ContactsService('exampleCo-exampleApp-1.0');
                        myService.getContactFeed(query, function(result) {
                                document.cookie="g314-scope-0=";
                                    window.opener.parseGmailContacts(result.feed.entry);
                            close();
                            }, function(e){
                                alert(e.cause ? e.cause.statusText : e.message);
                        });
                    }
                }
            });
            function logMeIn() {
                scope = "https://www.google.com/m8/feeds";
                var token = google.accounts.user.login(scope);
            }
            function logMeOut() {
                google.accounts.user.logout();
            }
            function checkLogin(){
                scope = "https://www.google.com/m8/feeds/";
                var token = google.accounts.user.checkLogin(scope);
                return token;
            }
        </script>
    </body>
    </html>

Google Contacts API バージョン 3.0 は JavaScript クライアントまたは gdata ライブラリをサポートしていますか?

4

1 に答える 1

8
var authParams = gapi.auth.getToken() // from Google oAuth

authParams.alt = 'json';

$.ajax({
  url: 'https://www.google.com/m8/feeds/contacts/default/full',
  dataType: 'jsonp',
  data: authParams,
  success: function(data) { console.log(data); }
});

基本的には、これを google api javascript ライブラリで提供される authSample.html にプラグインするだけです -- https://code.google.com/p/google-api-javascript-client/

于 2012-09-08T23:04:43.260 に答える