Não é possível acessar a API do IBM Watson localmente devido ao CORS em um aplicativo Rails / AJAX

Parece não haver muitas respostas (mas muitas perguntas) sobre como lidar com isso, então vou adicionar meu nome ao refrão e orar por uma resposta que não envolva o Node.

Meu erro no console do Chrome:

1. POST https://gateway.watsonplatform.net/visual-recognition-beta/api 
2. XMLHttpRequest cannot load https://gateway.watsonplatform.net/visual-recognition-beta/api. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access. The response had HTTP status code 401.

Estou usando uma solicitação RJA AJAX como tal:

$.ajax({
         method: "POST",
         version: 'v2-beta',
         url: "https://gateway.watsonplatform.net/visual-recognition-beta/api",
         password: "-----------",
         username: "-----------",
         version_date:'2015-12-02',
         visual_recognition: [
             {
             name: "visual-recognition-service",
             label: "visual_recognition",
             plan: "free",
             credentials: {
                 url: "https://gateway.watsonplatform.net/visual-recognition-beta/api",
                 password: "----------",
                 username: "---------"
               }
             }
           ],
         image: "/images/image1.jpg",
         contentType: 'application/json'
         }).done(function(msg){
         if (200) {
           console.log("This is a test for if.")
         } else {
           console.log("This is a test for else.")
         }
       });

Para esse aplicativo de protótipo específico, eu tenho o Rack :: Cors configurado para permitir que tudo funcione. Isso está no meu application.rb:

config.middleware.insert_before 0, "Rack::Cors" do
      allow do
        origins '*'
        resource '*',
        :headers => :any,
        :methods => [:get, :post, :delete, :put, :patch, :options, :head],
        :expose  => ['access-token', 'expiry', 'token-type', 'uid', 'client', 'auth-token'],
        :max_age => 0
      end
end

Existe alguém por aí que sabe como essas coisas devem ser configuradas para contornar isso? Eu tenho que assumir que há uma maneira de acessar essas APIs sem precisar iniciar uma instância do Node.

questionAnswers(2)

yourAnswerToTheQuestion