我们正在尝试使用Amazon Web Services物联网(AWS IoT)从Web浏览器发送消息(例如:.鉴于AWS IoT支持JavaScript,我们希望这是可能的 ......
我们在AWS IoT文档中进行了搜索,但只查找了服务器端示例 (公开AWS秘密/密钥......)
是否有任何良好的工作示例或教程可以使用AWS IoT在浏览器中通过WebSockets/MQTT发送/接收消息(例如:使用AWS Cognito进行身份验证)?谢谢!
amazon-web-services websocket node.js amazon-cognito aws-iot
我一直在关注AWS IoT文档试图开始使用http://docs.aws.amazon.com/iot/latest/developerguide/protocols.html#mqtt-ws上的MQTT教程 来设置WebSocket连接到Web应用程序中的AWS IoT.第一步是通过对通过遵循教程中的步骤创建的端点发出GET请求来启动WebSocket连接,但是我收到此错误:
XMLHttpRequest cannot load <my endpoint> Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
我想知道是否有人遇到过这个错误,如果有的话,他们是如何解决的?
我一直在尝试在Elixir或Erlang中找到示例功能,以获取可填写的PDF,然后使用来自应用程序的输入数据填充它.
到目前为止,我无法在Elixir或Erlang中找到任何解决方案.
有没有人知道我们可以用来实现这个目标的好方法或模块?
提前致谢!
当我的测试在Heroku上运行时,我发现了一个奇怪的错误,周五没有发生,一切都很好.
-----> Running test command `mix test`...
08:29:52.761 [info] Already up
08:29:53.389 [info] seeding in prod environment
08:29:53.389 [info] runing default seeds
All departments inserted
** (RuntimeError) cannot configure sandbox with pool DBConnection.Poolboy.
To use the SQL Sandbox, configure your repository pool as:
pool: Ecto.Adapters.SQL.Sandbox
(ecto) lib/ecto/adapters/sql/sandbox.ex:429: Ecto.Adapters.SQL.Sandbox.mode/2
(elixir) lib/code.ex:376: Code.require_file/2
(elixir) lib/enum.ex:675: Enum."-each/2-lists^foreach/1-0-"/2
(elixir) lib/enum.ex:675: Enum.each/2
(mix) lib/mix/tasks/test.ex:229: Mix.Tasks.Test.run/1
-----> test command `mix test` failed with exit status 1
Run Code Online (Sandbox Code Playgroud)
几个月内没有对测试配置的更改......
# Configure your database
config :ev2, Ev2.Repo,
adapter: Ecto.Adapters.Postgres, …Run Code Online (Sandbox Code Playgroud) 我正在使用Elixir + Phoenix 1.3并定义了Accounts上下文。我想将accounts.ex文件用作其他模块中要求的索引,以防止它变得太大,但我无法从我创建的其他模块中导入功能。
我的文件结构如下:
lib
|- Project
|- Accounts
|- accounts.ex
|- user_api.ex
Run Code Online (Sandbox Code Playgroud)
这是我的accounts.ex文件的外观:
# accounts.ex
defmodule Project.Accounts do
@moduledoc """
The Accounts context.
"""
import Ev2Web
import Ecto.Query, warn: false
alias Project.{Accounts}
use Accounts.UserAPI
end
Run Code Online (Sandbox Code Playgroud)
这是我要导入的模块:
# user_api.ex
defmodule Project.Accounts.UserAPI do
alias Project.{Repo}
alias Project.{Accounts.User}
def list_users do
Repo.all(User)
end
end
Run Code Online (Sandbox Code Playgroud)
我希望能够导入我的Project.Accounts.UserAPI模块,以便可以Project.Accounts.list_users()在我的控制器中进行引用,但是未导入这些模块。我得到了错误function Project.Accounts.UserAPI.__using__/1 is undefined or private。
我的控制器如下所示:
defmodule ProjectWeb.UserController do
use ProjectWeb, :controller
alias Project.Accounts …Run Code Online (Sandbox Code Playgroud) 我正在使用Elixir 1.7.2+ Phoenix 1.3并且我"Are you sure?"确认删除之前有一个删除链接,其中包含数据提示.
问题是,当您单击delete应用程序中的按钮时,它"Are you sure?"会在实际允许您删除之前要求多次连续确认(有时多达6次).
删除链接的代码是:
<%= link to: project_document_path(conn, :delete, project, document),
method: :delete,
data: [confirm: "Are you sure?"] do %>
<img class="absolute k-w2-5 top-0 left-1" src="/images/delete.svg" />
<% end %>
Run Code Online (Sandbox Code Playgroud)
有没有其他人在凤凰城遇到这种行为,其链接有确认提示并知道如何解决?
提前致谢!
在我将许多文件上传到 S3 时,使用 Task.async_stream 效果很好。
\n\n尝试在 download_many 函数中使用它,该函数采用 url 和 id 的关键字列表。当我在 iex 会话中运行 download_many 函数时,它返回以下输出:
\n\niex(1)> Karma.S3.download_many(1)\n #Function<1.112846234/2 in Task.build_stream/3>\n #Function<1.112846234/2 in Task.build_stream/3>\nRun Code Online (Sandbox Code Playgroud)\n\n这是函数:
\n\ndef download_many(_urls) do\n urls = [\n \xe2\x80\x9c5\xe2\x80\x9d: \xe2\x80\x9chttps://engine-image-uploads.s3.amazonaws.com/engine-image-uploads/d4a9f8adb58b4e0b83c47e8f3b21d421-fillable.pdf\xe2\x80\x9c,\n \xe2\x80\x9c3\xe2\x80\x9d: \xe2\x80\x9chttps://engine-image-uploads.s3.amazonaws.com/engine-image-uploads/ccd6d66cb4304b369a025efe3b26e68b-fillable.pdf\xe2\x80\x9d\n ]\n\n ops = [max_concurrency: System.schedulers_online() * 3, timeout: 20000]\n\n tasks = Task.async_stream(urls, &download_with_id/1, ops)\n |> Enum.to_list()\n IO.inspect tasks\n end\n\n def download_with_id({id, url}) do\n file_destination = System.cwd() <> \xe2\x80\x9c/tmp/altered_document_\xe2\x80\x9d <> Atom.to_string(id) <> \xe2\x80\x9c.pdf\xe2\x80\x9d\n download(url, file_destination)\n |> Tuple.insert_at(2, id)\n end\nRun Code Online (Sandbox Code Playgroud)\n\n以及该文件的链接:https://github.com/karmaradio/karma/blob/async-download_many/lib/S3.ex#L58 …