私はDjango Rest FrameworkをDjangoプロジェクトに実装しました.Djangoを使ってWebアプリケーションを維持しながらDjangoをIonic Frameworkアプリケーションのバックエンドとして使用することができました。 oauthツールキットを使用して、OAuth2へのプロセスを進めましたが、今は、ユーザーを認証しトークンを取得するために、イオンフレームワーク側からhttpリクエストを呼び出す方法がわかりません。私は私のブラウザでそれを実行した場合でも、私はcurlコマンドcurl -X POST -d "grant_type=password&username=USERNAME&password=PASSWORD" -u "CLIENT ID:CLIENT SECRET" https://www.example.com/o/token/
作品は完全に罰金サーバー側でNo 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:8100' is therefore not allowed access. The response had HTTP status code 500.
Django Rest Framework Ionic Frameworkを使ったHTTPポストコールと認証
を取得し、返す
login(username, password, url) {
let headers = new Headers()
headers.append("Content-Type", "application/x-www-form-urlencoded");
return this.http.post(url,
{"username": username,
"password": password,
}, {headers: headers})
.map(res => res.json());
}
を:としてこれまでイオン側の私は、httpリクエストを持っていますトークン。ここで、USERNAME、PASSWORD、CLIENT ID、およびCLIENT SECRETはすべてそれぞれの値です。
これが正しい質問であるかどうかはわかりませんが、cURLコマンドをIonicアプリで使用できるものにするにはどうすればよいですか?
これらは私の休息FrameworkとCORS設定されている:
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.IsAuthenticated'
],
'DEFAULT_AUTHENTICATION_CLASSES': [
'oauth2_provider.contrib.rest_framework.OAuth2Authentication',
]
}
CORS_ORIGIN_WHITELIST = [
'localhost:8100',
]
CORS_ALLOW_CREDENTIALS = True
以下をご覧ください:https://github.com/ottoyiu/django-cors-headers –
私は現在インストール済みですが、ホワイトリストには「localhost:8100」が含まれています –
うまくインストールされているミドルウェアに存在する、正しい設定)、わからない。 –