宇宙ステーショントラッカーのWeb応答を制御する
クラウドオブジェクトからのHTTP応答の正確な機能は,HTTPResponseを返すことにより制御することができる.エラー状態はHTTPErrorResponseで扱うことができる.
国際宇宙ステーションの現在の位置に最も近い都市を見付ける関数を定義する.宇宙ステーションは高速で移動するので,結果もすぐに変更される.
完全なWolfram言語入力を表示する
In[2]:=
issLocationDisplay[]
Out[2]=
HTTPResponseを使ってコンテンツタイプを示し,ブラウザに結果をキャッシュ保存しないよう指示するヘッダを指定して,毎回結果を計算するクラウドオブジェクトを配備する.
In[3]:=
obj = CloudDeploy[
Delayed[HTTPResponse[
ExportString[issLocationDisplay[], "PNG"], <|
"ContentType" -> "image/png",
"Headers" -> {"Cache-Control" -> "no-cache"}|>]],
CloudObject["iss-location"], Permissions -> "Public"]
特定のユーザがクラウドオブジェクトを使うことを禁止し,HTTPErrorResponseを返す.
In[4]:=
obj = CloudDeploy[Delayed[
If[MemberQ[{"badapple@example.com", "blackhat@example.com",
"spammer@example.com"}, $WolframID],
HTTPErrorResponse[403],
HTTPResponse[
issLocationDisplay[], <|
"Headers" -> {"Cache-Control" -> "no-cache"}|>]
]], CloudObject["iss-location"], Permissions -> "Public"]