Я знаю, как сделать вызовы API угловыми, используя службу $ http, но все примеры онлайн вызывают веб-API. Моя проблема в том, что мой коллега построил API с использованием ruby, и я не знаю, как назвать его, так как он находится в моей локальной среде. Вот код Ruby:Как сделать вызов API локальному рубиновому файлу
class Api::SignageAgentController < ApiController
def index
render json: Ingestor.signage_agents.to_json
end
def update
return render(status: :unprocessable_entity,json: ['No signage agent given']) unless @ingestor == Ingestor.signage_agents.find_by_id(params[:id])
if @ingestor.update_attributes(valid_params)
render json: @ingestor.to_json
else
render(status: :unprocessable_entity,json: @ingestor.errors.to_a)
end
end
protected
def valid_params
params.require(:signage_agent).permit(:policy_file_keys) rescue {}
end
end
Как бы мне позвонить, указав индекс в angularjs?
Угловые пробеги на клиенте (веб-браузер); Ruby работает на сервере (на другом компьютере, в другом месте). Вам нужно Угловое сделать запрос XHR на сервер, а код Ruby на сервере может затем вызвать другой код Ruby на сервере. В этом случае вы можете создать экземпляр нового 'Api :: SignageAgentController' либо во время запроса, либо при запуске приложения, либо называть методы вызова. – Phrogz
Можете ли вы показать нам, что вы 'config/routes.rb', но только те, что относятся к' signage_agent'? – fbelanger
@fbelanger Кажется, что ссылка на агента вывески отсутствует, другой, вызванный в файле маршрутов api, «делает» с каким-то другим кодом под ними.Вот он: 'resources: signage_agent, only: [: index,: update]' – ADHDTurtle