Устройство не принимает токен JSONAndroid

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Устройство не принимает токен JSON

Сообщение Anonymous »

Я посмотрел параметры в консоли рельсов и обнаружил, что там добавлены пользователи, поэтому мне это понравилось

Код: Выделить всё

val json = parseToJsonElement("""
{"name":"$name","password":"$password"}}"""
Однако он по-прежнему отклоняет его как 401 Несанкционированный доступ на стороне рельсов.
Раньше я мог войти в систему с помощью своего токена JSON через Android для devise, пока не решил добавить собственные представления.
Как исправить?
В консоли:

Код: Выделить всё

Started POST "/users/sign_in" for 127.0.0.1 at 2025-01-10 22:40:28 +0200
ActiveRecord::SchemaMigration Load (0.2ms)  SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC /*application='LoginApi'*/
Processing by Devise::SessionsController#create as HTML
Completed 401 Unauthorized in 25ms (ActiveRecord: 0.0ms (0 queries, 0 cached) | GC: 0.0ms)

Processing by Devise::SessionsController#new as HTML
Completed 200 OK in 16ms (Views: 0.2ms | ActiveRecord: 3.3ms (0 queries, 0 cached) | GC: 0.0ms)
Контроллер регистрации:

Код: Выделить всё

  def create
super
logger.debug "here it is."
devise_api_token = current_devise_api_token
if devise_api_token
render json: { message: "You are logged in as #{devise_api_token.resource_owner_name}"}, status: :ok
else
render json: { message: "You are not logged in"}, status: :unauthorised
end
end
Контроллер приложений:

Код: Выделить всё

class ApplicationController < ActionController::API
before_action :configure_permitted_parameters, if: :devise_controller?

protected

def configure_permitted_parameters
devise_parameter_sanitizer.permit(:sign_up, keys: [:name])
end
end
cors.rb:

Код: Выделить всё

Rails.application.config.middleware.insert_before 0, Rack::Cors do
allow do
origins "*"

resource "*",
headers: :any,
methods: [:get, :post, :put, :patch, :delete, :options, :head]
end
end
пробовал с и без config.authentication_keys = [:name] в config/devise.rb

Подробнее здесь: https://stackoverflow.com/questions/793 ... json-token
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»