React Native, Expoで端末内の画像取得と保存

画像系のアプリを作ろうと思ったら、端末の画像を読み取ったり保存したい。

出来たらExpoで完結したいので色々方法を調べてみた。

制限に沿わない場合はワークフロー見つつBareに切り替えることも考える。

React Native 0.60 Expo v34

続きを読む React Native, Expoで端末内の画像取得と保存

Now+GitHub+Golangでお手軽Webアプリ

Nowはzeitの提供するPaaSでサーバのことを何も考えずWebアプリを作成できます。

npm i -g nowでCLIコマンドをインストールできますが、nowコマンド一つでアップロード&公開することが出来るのは便利な反面、ちょっと怖い。

別ディレクトリを開いてるときにコマンド履歴から誤操作とか普通にしそう。

GitHub連携でPushされるたびに更新ができるので、CLIインストールせずに利用してみたいと思います。

続きを読む Now+GitHub+Golangでお手軽Webアプリ

ローカルホストのWebScoketにSSLサイトから接続する

ApacheでSSL化したサイトから内部で動くWebSocketに接続がしたい。

対処療法的な対策をしたので正しいかどうかはわかりませんがちゃんと動作させるまでできました。

設定的にはこの記事の続きです。

サーバ環境:Ubuntu16.04 Apache/2.4.34

続きを読む ローカルホストのWebScoketにSSLサイトから接続する

REST API or WebSocket

ウェブサービスを作る際、コンテンツをすべて含んだHTMLを返すと反応が遅くなったり、定期的に一部を更新する場合に非同期で更新を行うことを考えます。

  • HTTP(S)で情報を送信・取得する、いわゆるREST APIを使う
  • WebSocketを使って双方向のやり取りを確立する

どちらにしようかなと思ったので特徴を見て比べてみます。

続きを読む REST API or WebSocket

Linuxサーバーで自作WEBアプリを管理する

GolangのWebパッケージginを用いて作ったWEBアプリをLinuxサーバーで公開するためのメモ。ポートとかの話の続きです。

今回はアプリ永続化のための部分。

一度実行したらアップデートなどで止めるまで動き続けてくれるようにします。

Linux環境: Ubuntu 16.04.5

続きを読む Linuxサーバーで自作WEBアプリを管理する

【GO】WordPress(Apache)とginを同時に動かす

bitnamiのwordpressが動いているサーバーにgolangのWEBサービスを追加します。

アプリ自体は8080ポートで実行してサブディレクトリにマップする形です。

Apacheで他WEBサーバーを動かす場合も同様のやり方で行けると思います。

続きを読む 【GO】WordPress(Apache)とginを同時に動かす

【GO】ginで作ったWEBサービスを利用可能にする

LinuxサーバーでWEBアプリを公開する際のメモ。

単体で公開したり、ポートを分けて公開したり、サブディレクトリで公開したり。

続きを読む 【GO】ginで作ったWEBサービスを利用可能にする

【GO】html/templateにタグ入り文字列を渡す

template/htmlを使ってHTML表示を行う時、テンプレートの一部の表示方法を変えたいときがあります。

変えたい部分だけ変えたテンプレートを複数用意する方法もありますが、面倒というか煩雑になるのでパース部分に直接HTMLタグを書いて変更させたい。

そのままやるとタグ部分が文字列になったのでその対策方法メモ。

Execute部分などはgin-gonic/ginを使っているので省略。

続きを読む 【GO】html/templateにタグ入り文字列を渡す

【GO】gin + statikのシングルバイナリファイルサーバ

ginでシングルバイナリからファイルサーブすることを考えた。

用途を考えるとシングルバイナリ化する利点はあまりないこともあり、標準メソッドだけではできなかったので実装メモです。

以前に書いた記事も参考にした。

statikの使い方

statikパッケージを使うとフォルダをZIP化(バイナリ化)してhttp.FileSystemとして扱えるようになる。

ginのstaticFS

ファイルシステムの静的ファイルをサーブできるメソッド。

これが一番簡単だけどルートアクセスに設定できません。

static middleware(github

ミドルウェアを使うことでルートに設定可能です。

これをstatikで使えるようにします。

Serveの第2引数はServeFileSystemなのでインターフェースを満たす必要がある。

 

Existsメソッドが必要そうなのでミドルウェアの実装から必要なものを抜き出して実装してみます。

これでルートからでもファイルサーブできるようになった。