POST JSON для API с использованием Rails и HTTParty

Я хотел бы, чтобы пользователь в моем rubyе на приложении rails мог отправить билет в мою внешнюю систему управления билетами squishlist.com. У них есть api и инструкции следующим образом. Вам необходимо пройти аутентификацию и получить токен, а затем отправить билет с помощью токена. Из squishlist.

# get the token https://api.squishlist.com/auth/?cfg=testcorp&user_key=privatekey&api_key=TEST-KEY-12345 => {"token": "authtoken", "expires": "2010-06-16 13:31:56"} # and then the ticket with the token https://api.squishlist.com/rest/?cfg=testcorp&token=authtoken&method=squish.issue.submit&prj=demo POST data: {'issue_type': 1, 'subject': 'Hello, world.', 4: 'Open', 5: 10} 

Для целей тестирования я создал controller, маршрут и просмотр (страницу) для тестирования. На моем controllerе у меня есть следующее

 require 'httparty' require 'json' class SubmitticketController  {:subject => 'This is the screen name', :issue_type => 'Application Problem', :status => 'Open', :priority => 'Normal', :description => 'This is the description for the problem'}) end end 

И затем у меня есть страница, на которую я иду, чтобы увидеть результат действий controllerов, и имеет следующий код.

 

Я знаю, что он работает в целом из-за ответов, которые я получил на этом пути. Мой json отличается от примера из-за полей, которые я определил в squishlist. Может ли кто-нибудь помочь мне в этом вопросе?

Я предполагаю, что реальная проблема заключается в том, что я не могу понять, что выглядит json, и если он даже близок к совпадению. Я действительно не очень разбираюсь в json. Должен ли я использовать то, что может быть легко. Должен ли я использовать ajax для отправки этого. Любая помощь приветствуется. Я люблю сообщество здесь.

Я решил это, добавив .to_json и некоторую информацию о заголовке

 @result = HTTParty.post(@urlstring_to_post.to_str, :body => { :subject => 'This is the screen name', :issue_type => 'Application Problem', :status => 'Open', :priority => 'Normal', :description => 'This is the description for the problem' }.to_json, :headers => { 'Content-Type' => 'application/json' } ) 

Опция :query_string_normalizer также доступна, что переопределит нормализатор по умолчанию HashConversions.to_params(query)

 query_string_normalizer: ->(query){query.to_json} 
  • Безопасно ли хранить пароли в качестве переменных среды (а не как обычный текст) в файлах конфигурации?
  • Как можно импортировать только переменные и миксины из таблиц стилей Scss?
  • Что такое параметр _snowman в Ruby on Rails 3?
  • Используя Rails, как я могу установить свой первичный ключ, чтобы он не был столбцом с целым типом?
  • Что такое scope / named_scope в рельсах?
  • Rails: получить IP-адрес клиента
  • Как вы пишете нечувствительный к регистру запрос для MySQL и Postgres?
  • Как добавить bootstrap modal с link_to, чтобы содержимое ссылки открылось в модальном?
  • Redis + ActionController :: Живые streamи не умирают
  • Где хранить конфиденциальные данные в приложении public rails?
  • Составные первичные ключи в сравнении с уникальным полем идентификатора объекта
  • Interesting Posts

    Скопировать-на-выбрать, вставить-на-среднем-щелчок на Mac OS X?

    Экземпляр SSH на экземпляр эластичного бобового стежка

    Как преобразовать значение enum в int?

    MongoDB: уникальный индекс для свойства элемента массива

    bootstrap 4 nav не отображает гамбургер при изменении размера

    Совместимость PCI-Express 2.0 с обратной совместимостью?

    Как удалить определенные «самые посещаемые» сайты Chrome jumplists (Windows 10)?

    Библиотека SSH для Java

    Почему rand () дает одну и ту же последовательность чисел при каждом запуске?

    Легкий способ конвертировать длинный в широкий формат с подсчетами

    Каковы различия между представлением моментального снимка и динамическим представлением?

    Классический ASP – Как преобразовать строку UTF-8 в UCS-2?

    Почему бы не начать нить в конструкторе? Как прекратить?

    Начиная с обновления до Windows 10 мой тачпад быстро переключается с включенного на отключенный

    Мульти-арендатор с кодом First EF6

    Давайте будем гением компьютера.