You can not select more than 25 topics
Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
- class Projects::ElasticsearchService < ApplicationService
- attr_reader :keyword
-
- def initialize(keyword)
- @keyword = keyword
- end
-
- def call
- domain = EduSetting.get("search_api_url") || "https://statistics.gitlink.org.cn"
- api_url = URI.encode("#{domain}/search?page=1&size=1000&term=#{@keyword}&type=1")
- response = Faraday.get(api_url)
- result = JSON.parse(response&.body)
- project_ids = result['data']['rows'].map{|d|d['instanceId']}
- project_ids
- rescue => e
- Rails.logger.info "ElasticsearchService error: #{e.message}"
- []
- end
-
- end
|