diff --git a/src/main/resources/templates/clientdetails/test_client.html b/src/main/resources/templates/clientdetails/test_client.html index b28fd90..592a164 100644 --- a/src/main/resources/templates/clientdetails/test_client.html +++ b/src/main/resources/templates/clientdetails/test_client.html @@ -97,7 +97,7 @@ <tr> <td>client_secret</td> <td> - <input readonly="readonly" name="client_secret" size="70" + <input readonly="readonly" name="client_secret" size="70" required="required" value="{{clientSecret}}" placeholder="请先在页面最上面输入client_secret"/> </td> </tr> @@ -121,7 +121,7 @@ <td>code</td> <td> <input type="text" name="code" value="" ng-model="code" - placeholder="Laulaadi78kB0DkQKv..." size="70"/> + placeholder="Laulaadi78kB0DkQKv..." size="70" required="required"/> <p class="help-block">请输入code值</p> </td> </tr> @@ -160,23 +160,60 @@ </table> </div> <br/> - redirect_uri: <input type="text" value="" ng-model="redirectUri" size="70" - required="required"/> - <br/> - code_challenge: <input type="text" value="" ng-model="codeChallenge" size="70" - readonly="readonly"/> <span class="text-muted">(后台代码生成,不可修改)</span> - <br/> <form th:action="@{/oauth2/authorize}" th:method="get" target="_blank"> - <input type="hidden" name="client_id" value="{{clientId}}"/> - <input type="hidden" name="redirect_uri" value="{{redirectUri}}"/> - <input type="hidden" name="scope" value="{{scope}}"/> - <input type="hidden" name="state" value="{{state}}"/> - <input type="hidden" name="code_challenge" value="{{codeChallenge}}"/> - <input type="hidden" name="code_challenge_method" value="S256"/> - <input type="hidden" name="response_type" value="code"/> - <button class="btn btn-link" type="submit"> - /oauth2/authorize?client_id={{clientId}}&redirect_uri={{redirectUri}}&response_type=code&scope={{scope}}&state={{state}}&code_challenge={{codeChallenge}}&code_challenge_method=S256 - </button> + <table class="table table-striped table-bordered table-hover"> + <tr> + <td>client_id</td> + <td> + <input readonly="readonly" name="client_id" size="70" value="{{clientId}}"/> + </td> + </tr> + <tr> + <td>redirect_uri</td> + <td> + <input type="text" name="redirect_uri" size="70" + value="{{redirectUri}}" placeholder="https://..."/> + <p class="help-block">若配置有多个<code>redirect_uri</code>可自行修改(默认使用第一个)</p> + </td> + </tr> + <tr> + <td>scope</td> + <td> + <input type="text" readonly="readonly" name="scope" size="70" + value="{{scope}}"/> + </td> + </tr> + <tr> + <td>state</td> + <td> + <input readonly="readonly" name="state" size="70" value="{{state}}"/> + <p class="help-block">每次随机生成, spring-oauth-server原封不动返回(防止会话劫持攻击)</p> + </td> + </tr> + <tr> + <td>response_type</td> + <td> + <input readonly="readonly" name="response_type" size="70" value="code"/> + <p class="help-block">固定值</p> + </td> + </tr> + <tr> + <td>code_challenge_method</td> + <td> + <input readonly="readonly" name="code_challenge_method" size="70" value="S256"/> + <p class="help-block">固定值</p> + </td> + </tr> + <tr> + <td>code_challenge</td> + <td> + <input type="text" value="" ng-model="codeChallenge" size="70" + readonly="readonly" name="code_challenge"/> + <p class="help-block">(后台代码生成,不可修改)</p> + </td> + </tr> + </table> + <button class="btn btn-info" type="submit">/oauth2/authorize</button> </form> <span class="label label-info">GET</span> </div> @@ -184,23 +221,57 @@ <li> <code>用 'code' 换取 'access_token'</code> <br/> - 输入第一步获取的code: <input type="text" name="code" value="" ng-model="code" - placeholder="Laulaadi78kB0DkQKv..." size="70"/> - <br/> - code_verifier: <input type="text" name="codeVerifier" value="" ng-model="codeVerifier" - readonly="readonly" size="70"/> <span - class="text-muted">(后台代码生成,不可修改)</span> + 输入第一步获取的code并点击按钮地址. <form th:action="@{/oauth2/token}" th:method="post" target="_blank"> - <input type="hidden" name="client_id" value="{{clientId}}"/> - <input type="hidden" name="redirect_uri" value="{{redirectUri}}"/> - <input type="hidden" name="client_secret" value="{{clientSecret}}"/> - <input type="hidden" name="code" value="{{code}}"/> - <input type="hidden" name="code_verifier" value="{{codeVerifier}}"/> - <input type="hidden" name="grant_type" value="authorization_code"/> - <button class="btn btn-link" type="submit"> - /oauth2/token?client_id={{clientId}}&client_secret={{clientSecret}}&grant_type=authorization_code&code={{code}}&redirect_uri={{redirectUri}}&code_verifier={{codeVerifier}} - </button> + <table class="table table-striped table-bordered table-hover"> + <tr> + <td>client_id</td> + <td> + <input readonly="readonly" name="client_id" size="70" value="{{clientId}}"/> + </td> + </tr> + <tr> + <td>client_secret</td> + <td> + <input readonly="readonly" name="client_secret" size="70" required="required" + value="{{clientSecret}}" placeholder="请先在页面最上面输入client_secret"/> + </td> + </tr> + <tr> + <td>redirect_uri</td> + <td> + <input type="text" name="redirect_uri" size="70" + value="{{redirectUri}}" placeholder="https://..."/> + <p class="help-block">若配置有多个<code>redirect_uri</code>可自行修改(默认使用第一个)</p> + </td> + </tr> + <tr> + <td>grant_type</td> + <td> + <input readonly="readonly" name="grant_type" size="70" + value="authorization_code"/> + <p class="help-block">固定值</p> + </td> + </tr> + <tr> + <td>code</td> + <td> + <input type="text" name="code" value="" ng-model="code" + placeholder="Laulaadi78kB0DkQKv..." size="70" required="required"/> + <p class="help-block">请输入code值</p> + </td> + </tr> + <tr> + <td>code_verifier</td> + <td> + <input type="text" name="code_verifier" value="" ng-model="codeVerifier" + readonly="readonly" size="70" /> + <p class="help-block">(后台代码生成,不可修改)</p> + </td> + </tr> + </table> + <button class="btn btn-primary" type="submit">/oauth2/token</button> <span class="label label-warning">POST</span> </form> </li>