2021年4月7日水曜日

JSONって・・・

 手打ちでJSONの戻り値を入れようと思ったのだけど、

まちがってたわ

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse


ここで手打ちしたものを試して、なんとなく仕組みがわかってきた。

fmt.Fprint(w, "{\"status\": 200, \"result\"\"ok\"}")

最初statusやresultはクォーテーションで囲っていなかったのだが、

上記のようにクォートしないとダメだった。

こんなもんで結構な時間ハマった・・・

アフォか

2021年4月2日金曜日

SEDNAでHTMLのインサート

SEDNAでHTMLをインサートする際の動きが難しいので考えを整理する。
やって見たことは以下2点

(1)CDATAセクションでくくる
   se_expでエクスポートしてみたら、CDATAは消えていて、
   HTMLタグが<などでエスケープされていた。
(2)前もってHTMLを加工してインサート
   前もってHTMLを加工して、改行を&#10に変え1行にし、
   HTMLタグも<などに変えて、変数に入れたのち、
   その変数を使ってインサートし、se_expでエクスポートしてみたら、
   1とほぼ変わらなかった。
結論
  (2)により改行がなくなるので、XQueryで変数への代入が可能になる
  しかし(1)もやらないと、XQueryでは結局改行が展開されてしまうので、
  複数行になってしまう。
  その際CDATAセクションにしておかないと、Syntaxエラーになってしまう。
  結局上記(1)と(2)両方用いて対応した。

2021年4月1日木曜日

golang で バックエンドのCORS処理

CORSてのがあって詳しくはココ参照
ブラウザからリクエストが来るときは、最初のメソッドがPUTやPOSTなどではなく、OPTIONSになるらしい。
OPTIONSの時は以下のようなヘッダをセットして返してあげると、続けて本番のMethodが飛んでくる。
この流れをpreflightと言うらしい それで実際の動きはどうなるかというとこんな感じ