質問編集履歴
1
追記、修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
### 実現したいこと
|
2
2
|
- [ ] RailsとDeviseとDeviseAuthTokenの両方を仕様して、WebとAPIでメール認証を行いたい。
|
3
|
-
- [ ] Webから登録
|
3
|
+
- [ ] Webから登録した場合のみ、アカウント認証メールが送信されない(letter_openerで確認できない)問題を解決したい
|
4
4
|
|
5
5
|
### 前提
|
6
6
|
RailsとDeviseとDeviseAuthTokenの両方を仕様してユーザー認証を実装しております。
|
@@ -165,11 +165,48 @@
|
|
165
165
|
resources :users
|
166
166
|
end
|
167
167
|
end
|
168
|
+
|
169
|
+
|
170
|
+
if Rails.env.development?
|
171
|
+
mount LetterOpenerWeb::Engine, at: "/letter_opener"
|
168
|
-
end
|
172
|
+
end
|
173
|
+
end
|
174
|
+
```
|
175
|
+
|
176
|
+
```Gemfile
|
177
|
+
source 'https://rubygems.org'
|
178
|
+
git_source(:github) { |repo| "https://github.com/#{repo}.git" }
|
179
|
+
|
180
|
+
ruby '2.6.0'
|
181
|
+
|
182
|
+
gem 'rails', '5.2.8'
|
183
|
+
gem 'rack-cors'
|
184
|
+
gem 'devise'
|
185
|
+
gem 'devise_token_auth'
|
186
|
+
|
187
|
+
group :development do
|
188
|
+
gem 'letter_opener'
|
189
|
+
gem 'letter_opener_web'
|
190
|
+
end
|
191
|
+
|
192
|
+
|
193
|
+
```
|
194
|
+
|
195
|
+
```config/initializers/cors.rb
|
196
|
+
Rails.application.config.middleware.insert_before 0, Rack::Cors do
|
197
|
+
allow do
|
198
|
+
origins '*'
|
199
|
+
resource '*',
|
200
|
+
headers: :any,
|
201
|
+
expose: ['access-token', 'uid', 'client', 'expiry', 'token-type'],
|
202
|
+
methods: [:get, :post, :put, :patch, :delete, :options, :head]
|
203
|
+
end
|
204
|
+
end
|
205
|
+
|
169
206
|
```
|
170
207
|
|
171
208
|
### 試したこと
|
172
|
-
APIの方では以下のコマンドでユーザー登録すると、ユーザーが作成されアカウント確認メールが送信されます。
|
209
|
+
APIの方では以下のコマンドでユーザー登録すると、ユーザーが作成されアカウント確認メールが送信されます。(letter_openerで確認できます)
|
173
210
|
```terminal
|
174
211
|
curl localhost:3000/api/v1/auth -X POST -H 'Content-Type: application/json' -d '{"email": "test@example.com", "gender": 1, "password": "password","password_confirmation": "password", "name": "test", "confirm_success_url":"http://localhost:3000/sign_in"}' -i
|
175
212
|
```
|