Как создать и настроить свой веб-сервер на VDS (05 сен 2024)

Осенью самое время заняться установкой и тюнингом своего веб-сервера. Не правда ли?

HeadHunter negotiations on Rails

Больше
7 года 3 мес. назад - 6 года 3 мес. назад #1 от Aleksej
Aleksej создал тему: HeadHunter negotiations on Rails
Продолжение материала блога HeadHunter resume updater on Ruby on Rails .

Здесь привожу код application rails (view + controller), вытаскивающей через API HeadHunter переписку с работодателями - ваши отклики на вакансии и ответную реакцию на них. Мне кажется, весьма удобно сгруппировать где-нибудь на своем web-сайте такого рода закрытый "уголок соискателя", где информация, касающаяся ваших поисков работы, сгруппирована именно так, как вам представляется удобным - обновления резюме, история рассылки, отклики, просмотры... разумеется, все очень субъективно; показанный далее код, который вы можете свободно тестировать (ссылка на herokuapp в статье по ссылке выше) - всего лишь пример.

Очень рекомендую попробовать, кто не знаком, typhoeus, отличная замена curl на Ruby on Rails; остальное - по вкусу. Например, в показанном далее примере использован, как видите, еще и dotenv (далеко не единственное средство такого рода), дабы уберечь идентификаторы при клонировании вашего репозитория:

Code:
id_hh = ENV['ID_HH_CORR'] secret_hh = ENV['SECRET_HH_CORR']


, т.е. дополняем Gemfile таким вот (например) образом:

Code:
gem 'dotenv-rails', :require => 'dotenv/rails-now' gem 'typhoeus'


Итак, выводим на страничку 15 последних активных откликов - наименование компании, в HR-отдел которой вы отправили на HeadHunter свое резюме, собственно название приглянувшейся вам вакансии, идентификатор реакции работодателя (отказ, приглашение), статусы Read и Archived вакансии, указанный работодателем адрес, даты. Вы можете совершенно свободно тестировать демку данного приложения; полученные результаты нигде не записываются и недоступны никому, кроме вас. Вы должны быть авторизованы в своей учетке HeadHunter на момент запроса (если нет, приложение перенаправит вас на страницу ввода пароля на портале HeadHunter), также необходимо предоставить разрешение приложению на доступ к данным вашего аккаунта; уверяю, все перечисленное совершенно безопасно. Если необходимо, сразу после теста вы можете удалить предоставленный приложению доступ, открыв Настройки -> Мои приложения в своем аккаунте HeadHunter.


controller
Code:
class HhController < ApplicationController def index if params[:code].present? id_hh = ENV['ID_HH_CORR'] secret_hh = ENV['SECRET_HH_CORR'] response = Typhoeus::Request.post('https://hh.ru/oauth/token', params: { :grant_type => "authorization_code", :client_id => id_hh, :client_secret => secret_hh, :code => params[:code] } ) hash = JSON.parse(response.body) response = Typhoeus::Request.get('https://api.hh.ru/negotiations/active?pages=1&per_page=15', method: :get, headers: { Authorization: "Bearer #{hash['access_token']}" } ) @response = JSON.parse(response.body) end end end


index.html.erb
Code:
<% <% if params[:code].nil? %> %> <%= link_to 'Получение списка активных откликов', 'https://hh.ru/oauth/authorize?response_type=code&client_id=' + ENV['ID_HH_CORR'] %> <% else %> <table class="HHCorrTable"> <thead> <tr> <th>Name company</th> <th>Vacancy</th> <th>Id</th> <th>Read</th> <th>Archived</th> <th>Address</th> <th>Created at</th> <th>Updated at</th> </tr> </thead> <tbody> <% @response['items'].each do |item| %> <tr> <td><%= item['vacancy']['employer']['name'] %></td> <td><%= item['vacancy']['name'] %></td> <td><%= item['state']['name'] %></td> <td><%= item['read'] %></td> <td><%= item['vacancy']['archived'] %></td> <td><%= item['vacancy']['address'] %></td> <td><%= item['created_at'] %></td> <td><%= item['updated_at'] %></td> </tr> <% end %> </tbody> </table> <% end %> <% end %>
Последнее редактирование: 6 года 3 мес. назад пользователем p.rishard.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Dev banner 3
Больше
7 года 2 мес. назад #2 от Aleksej

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум