我是Aqueduct的新用户,每当我尝试向/auth/token
或/auth/code
路线发出请求时,我都会遇到无效的客户端错误。
我已经添加了OAuth2.0客户端并验证了密码是否正确。
我对/auth/token
的请求如下:
Future main() async {
var http2 = new http.Client();
var clientID = "com.wildfire.mobile";
var clientSecret = "myspecialsecret ";
var body = "username=usr&password=pwd&grant_type=password";
var clientCredentials = new Base64Encoder().convert(
"$clientID:$clientSecret".codeUnits);
var response = await
http.post(
"http://localhost:8081/auth/token",
headers: {
"Content-Type": "application/x-www-form-urlencoded",
"Authorization": "Basic $clientCredentials"
},
body: body);
当我尝试使用_user数据库中的用户名登录/auth/code
时,服务器会抛出400:invalid_client
答案 0 :(得分:0)
确实是一个配置错误的问题。删除所有数据库后,我添加了一个database.yaml文件,我认为该文件与config.yaml相同,但显然不是。 database.yaml看起来像这样:
username: adan
password: pass
host: localhost
port: 5432
databaseName: wildfire_db
虽然config.yaml看起来像这样:
database:
username: adan
password: pass
host: localhost
port: 5432
databaseName: wildfire_db
我还运行了aqueduct auth
和aqueduct db
命令而没有--connect标志,即使用配置文件。