2014-05-02 13 views
10

zu zeigen Ich bin in der Lage, beide prompt=consent und prompt=select_account einzeln zu verwenden, aber Google scheint mir nicht zu erlauben, sie zu kombinieren. Ich versuchte die prompt=consent+select_account wie in einer Antwort von Force google account chooser vorgeschlagen, aber das scheitert mit dem Fehler: "Ungültige Eingabeaufforderung: Zustimmung + select_account".Google erzwingen, um Kontoauswahl und Zustimmung Bildschirm

Das Dokument (https://developers.google.com/accounts/docs/OAuth2Login) sagt "Eine durch Leerzeichen getrennte Liste", also habe ich versucht consent select_account, aber das schlägt fehl mit: "Die angeforderte URL wurde auf diesem Server nicht gefunden."

Ich habe auch versucht, prompt=select_account und approval_prompt=force zu kombinieren, aber das mag Google auch nicht.

Hat noch jemand Glück mit der Kombination von Zustimmungsbildschirm und Kontoauswahl?

Update:

Dies ist meine JavaScript-Methode für URL Erstellen von Kontakten aus gmail bekommen

$scope.importGmailContacts = function() { 
    provider = 'gmail'; 
    $scope.importing_from_gmail = true; 
    window.open(protocol + "://" + host + ":" + port + "/contacts/gmail", "_blank", 
    "toolbar=yes, scrollbars=yes, resizable=yes, top=0, left=0, width=600, height=600, prompt='select_account+consent', approval_prompt=force"); 
} 

ich versucht habe prompt und approval_prompt sowohl kollektiv als auch individuell einstellen, aber es scheint nicht zu funktionieren. Refer to this question.

Antwort

1

ich das gerade versucht, und es hat funktioniert, wenn durch Leerzeichen getrennte:

Optionen [: prompt] 'select_account Zustimmung' =

1

Sie hinzufügen müssen: access_type=online&prompt=select_account+consent:

private static final String AUTHORIZE_URL 
    = "https://accounts.google.com/o/oauth2/auth?" 
     + "response_type=code&access_type=online&prompt=select_account+consent" 
     + "&client_id=xxx&redirect_uri=xxx"; 

private static final String SCOPED_AUTHORIZE_URL = AUTHORIZE_URL + "&scope=xxx"; 

..

+0

'prompt = select_account + Zustimmung' Sinn machen – einverne

0

https://accounts.google.com/o/oauth2/auth?client_id=XXXX&redirect_uri=urn:ietf:wg:oauth:2.0:oob&scope=https://www.googleapis.com/auth/analytics.readonly&response_type=code&prompt=select_account+consent&approval_prompt=force

Ergebnisse in dem Fehler

  1. That’s an error.

Error: invalid_request

Conflict params: approval_prompt and prompt

Eingabeaufforderung und approval_prompt Parameter können nicht zusammen verwendet werden.

prompt Optional.

A space-delimited, case-sensitive list of prompts to present the user. If you don't specify this parameter, the user will be prompted only the first time your app requests access. Possible values are:
none Do not display any authentication or consent screens. Must not be specified with other values.
consent Prompt the user for consent.
select_account Prompt the user to select an account.

Wenn der Speicher dient approval_prompt ist die ältere Art und Weise es und Google zu tun, im Jahr 2012 Prompt irgendwann habe ich kippe eigentlich keine Dokumentation finden auf approval_prompt mehr, aber wenn der Speicher dient war es das gleiche wie zu tun prompt = zustimmen es nur Zugriff erneut angefordert.

Verwandte Themen