RailsでCross Domainの通信を可能にする(CORS設定)

最近別ドメインのHTMLからajaxでAPIを提供することが多くなってきたのでメモ

まず、以下のGemを入れてる。

gem 'rack-cors'

Gemを入れたら

‘config/application.rb’に以下の記述を入れます。

    # CORS対応
    config.middleware.insert_before 0, Rack::Cors do
      allow do
        origins '*'
        resource '*', :headers => :any, :methods => [:get, :post, :options]
      end
    end

‘origins’は通信を可能にするドメインなどを入れておいて下さい。

localでテストする場合はlocalhostを入れておくのもいいです。

その場合はPortは3000からずらしておいたほうが安心かも知れない

origins 'localhost:3500', 'dosukoikoi.com'

[参考]

https://til.hashrocket.com/posts/4d7f12b213-rails-5-api-and-cors

http://stackoverflow.com/questions/39055622/access-control-allow-origin-on-a-single-rails-route

https://github.com/cyu/rack-cors/issues/125

DockerのTime zoneをJSTに設定する

Rails5をDocker上で動かして開発をしていたのですが、どーもActiveRecordでMySQLに保存したデータのcreated_atがUTCになってしまっていました。

Railsのactive_recordのtime_zoneの設定はlocalにしていました。

なんでかなー?と思ってたらDockerのtime_zoneの設定してなかった。

docker-compose.ymlのwebサーバーのenvironmentに以下の設定を加えればJSTになります。

 

[ 参考 ]

https://github.com/dnvriend/docker-timezone-test/blob/master/docker-compose.yml

Atomエラー Failed to activate the atom-ctags package

どのタイミングからわからないのだが、Atomで上記のようなエラーが発生するようになった。

どうやらctags.nodeが参照できていないようだ。

さすがGithub製なので、”View Issue”を見れば対応方法は記載されているが、一応対応方法を

メモしておく。

[ 対応方法 ]

ctags.coffeeの1行目のctags.nodeのrequireをしている行を以下のように修正

# vim ~/.atom/packages/atom-ctags/node_modules/ctags/src/ctags.coffee
{Tags} = require(process.resourcesPath + ‘/app.asar.unpacked/node_modules/ctags/build/Release/ctags.node’)
参考

EvernoteのノートをWordPressの記事として同期させる方法

WordPressでブログをやっていますが、なかなか更新が続かないわけです。

ただ、個人的にEvernoteにはいろいろネタをメモしてあるわけです。

体裁は良くないかもしれないけども、それをそのままWordpressの記事にできないかなと思っていました。

いろいろ試した結果。できました!

(この記事もEvernoteで投稿してみる)

手順は以下のとおり。

  1. WordPressに「Evernote Sync」プラグインをインストールする
  2. Evernote Syncの設定をする続いて、WordPressの設定の中にある「Evernote Sync」で設定を行います。

    Platformを”Evernote”、あとはDeveloper Tokenを設定してあげれば基本設定はOKです。

  3. Developer Tokenを取得するDeveloper Tokenは設定画面の中の”Evernote Developer Token”のリンクをクリックすれば

    EvernoteのDeveloper Tokensのページヘ遷移します。

    “Create a developer token”を押して、Developer TokenをコピーしてWordpressの設定に貼り付けてあげればOKです。

  4. Evernoteのノートのタグに設定したタグ名をつけて同期するあとは、記事にしたいノートのタグにWordpressの設定で指定したタグ名をつけて同期してあげればWordPressの記事としてアップされます。

Evernoteは記事の表現としてバリエーションが豊なわけではなりませんが、手軽に記事を公開したい人にはいいのではないでしょうか。

ただ、間違ってタグを付けないように気をつけてくださいね。

rails でaws-sdk V2を使ってファイルをアップロードした時のメモ

ruby on railsで AWS S3にファイルをアップロートといえば、carrywaveとかfogとか使ってファイルをアップロードしますね。

僕も普段はその方法を使っているのですが、それらってそもそもmodelにuploaderを生成したりとかしているんですね。

今回は、jsからカジュアルに画像をアップロードする仕組みを作りたかったので、サーバーサイドからファイルをアップロードしました。

その時の対応をメモしておきます。

Continue reading

つくば そばの名店「木村そば」

つくば近辺には沢山のお蕎麦屋さんがあります。

そのなかでも僕が好きなのが「木村そば」さんです。

木村そば

 

Continue reading

werckerでnokogiriのインストールに失敗した時の対応

werckerを使って、ブランチをpushした時にrspecのテストを回すような仕組みを作ってた時に、wercker上でエラーになった時の対応です。

Continue reading

Atomで編集ファイルを新規タブで表示させる方法

ちょっと前からAtomでファイルを開くと、既存タブで表示されるようになってしまいました…

非常に使いにくかったのでどうすれば元に戻るんだーって思ってたら簡単に戻せました。

「setting」のAllow Pending Pange Itemsのチェックリストを外すだけでした。

 

Screenshot 2016-05-10_19-49-13

 

 

 

herokuのルートドメインを変更する

herokuでwebサービスを作ると、ドメインが

 

xxxx.herokuapp.com

 

のようにheroku独自のドメインを使うことになってしまいます。

それでは嫌だったので、ルートドメインを変更する方法を探していました。

Continue reading

herokuにffmpegを導入した時の話

herokuにffmpegを使ってアップロードした動画ファイルのキャプチャを一緒に上げるようなサービスを作っていました。開発環境では動作確認できたのですが、heroku上で動きませんでした…

その時の対応です。railsで構築しています。

僕はmacを使っているのですが、そもそもmacでbuildしたffmpegはherokuでは動作しません。(そりゃそうだ…)

なのでheroku環境用のffmpegバイナリを用意する必要があります。

Continue reading

« Older posts

© 2017

Theme by Anders NorenUp ↑