Симуляция сервера системы файлов Wolfram Engine
Веб-разработка для облачного хранения файлов Wolfram Cloud может быть в значительной степени осуществлена без непосредственной загрузки чего-либо в файловую систему. Действия таких функций, как Delayed, FormFunction, и APIFunction можно проиллюстрировать с помощью функции GenerateHTTPResponse. Пользователь может изучить все аспекты работы HTTPResponse, в том числе код состояния, тип содержания и заголовки. Веб-приложения могут быть написаны, изменены, и испытаны автоматически с помощью этих возможностей. Работа функций может быть рассмотрена и в локальном веб-браузере, для чего необходимо нажать на диск статуса задачи в окне HTTPResponse.
Проиллюстрируем запрос к отсроченному объекту файловой системы, который составляет таблицу с информацией о семи горах, находящихся ближе всего к месту расположения пользователя.
response =
GenerateHTTPResponse[
Delayed[Map[
Composition[
Replace[#, {n_, el_, r_, pos_} :> {n, ToString[Round[el]],
StringJoin[
Riffle[Switch[r, {_String ..}, r, _List, CommonName[r], _,
r], ", "]], ToString[GeoDistance[$GeoLocation, pos]],
ToString@Latitude[pos], ToString@Longitude[pos]}] &,
MountainData[#, {"Name", "Elevation", "MountainRange",
"Position"}] &], GeoNearest["Mountain", $GeoLocation, 7]],
"CSV"]
]
Нажмите на зеленый круг состояния, чтобы открыть локальную копию созданной таблицы.
\!\(\*
GraphicsBox[
TagBox[RasterBox[CompressedData["
1:eJztXTGvNbdxvUgalfkLLl2qi8qkS+sgjTo7cYwggAPYAYLArbr8BbcqXbpI
ofaVLv0XXKb8ys2Tn7yiODNnDofcXXJ3DiiBj5cczpwZcmf57d37o5/9x0/+
9a9er9evP3v/309++l9/96tf/fS///Fv3v/4p1/++t9+8cuf/8s//PI/f/6L
n//qb3/21++N//P+3/++9/+2/s0f/+/rRCKRSCQSCQMfqcK/JxKJRCKRSGjY
U4Vt2z59+nTc/9+n+Optey+/+Wb7qGR9zvqPv/rT5To8Wf9n1t+9drkOs9WT
k876TuAk+ixdL1OFQ7GnClkmL+X6WrGsrv8zS3otOUkCZy5nnipcnhdlnamv
fi+zuv7PrOdZUHIyvP6xFcyjz9L1PFXIUpXVU/HV9X9mSa8lJ0ngzCWfVQjX
d0yiz6j6QfcyEmvpP0O9pG4GfQbWLz8LOi0+F+IE1GfjSq3P/6yCpHEe3ap6
niqES7VMblMOSsUrro6j7q63EiVjGXWH0iv/fCYnPF1zlpkJXIjGj5LPKoTr
Hy5+xyT6jKofdC/zgb29WiPz639tvaRrBn2G1y8/C6ricwbOL+cE1I9bvwPr
8z+rcHmM8fU8VYiV3cXVkrlByVOFCcv9wqwql3tNMnw555dz0kTXhGVmAhei
8aOcearw5e+2L3+/vf//n//8/6XrH3ivf1e5Wp+B9ff1dYR8ibX0nyTeJtFn
eP3DaxfqIGPycs4v5wTUz1nLnfV3Ai/XAddrGq/WB9TDpwqfGvE+xee/3d7L
F3/+/+r1CpfrM7D+vr6OkL8T9dF+HG8H6T9DvM2jz/D6u9eu1aGKzxk4v5wT
UF9i39sJnESfpdd1+FQhlip88fX3s69b/86/f2mvVs08esbqH+truPzvWdI4
nF//a+s3izFZ/85r1+lQxecMnF/OCagft34H1ve7hkn0kfXLY4yvx04VYqnC
x4wfZel6eQPyuXY/snT9oHuZKn+uOJxf/8vr5a5yp3j7qFx+FnRafC7ECajP
wI9bL+8aZtBH1he6dpx9qvAx7wQ5Uk+93FXU+5Gl6wfdy0ispf8M9R2T6DOw
fvlZ0GnxuRAnoD4bV2r921zrah1wfaFrRz6rkPWqPvO9zBP0f2b9rmdBycmF
9fmfVVions8qZL2qz3wv8wT9n1m/8VlQcnJVff5nFRaq57MKWa/qq9/LrK7/
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
JBKJRCKxGv4foOz+fw==
"], {{0, 139}, {697, 0}}, {0, 255},
ColorFunction->RGBColor],
BoxForm`ImageTag["Byte", ColorSpace -> "RGB", Interleaving -> True],
Selectable->False],
DefaultBaseStyle->"ImageGraphics",
ImageSize->Automatic,
ImageSizeRaw->{697, 139},
PlotRange->{{0, 697}, {0, 139}}]\)
Проиллюстрируем запрос к функции APIFunction.
response =
GenerateHTTPResponse[
APIFunction["ticker" -> "TickerSymbol",
EntityValue[#ticker, EntityProperty["Financial", "Last"]] &], <|
"Query" -> {"ticker" -> "FDX"}|>]
\[AliasDelimiter]
Рассмотрим каждый компонент ответа.
response[{"StatusCode", "ContentType", "Body"}]
Протестируем функцию в ситуации неверно выполненного запроса.
response =
GenerateHTTPResponse[
APIFunction["ticker" -> "TickerSymbol",
EntityValue[#ticker, EntityProperty["Financial", "Last"]] &, {"WL",
None, "WL"}], <| "Query" -> {"ticker" -> "134"}|>]
Рассмотрим отчёт об ошибке.
response["Body"]