问题标签 [cowboy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
552 浏览

erlang - 牛仔 'GET' 请求变量值

请告诉我,如何获取 GET 请求的变量值:

但我收到一个错误:qs_vals - undefined

0 投票
1 回答
339 浏览

macos - 在 Mac OS X 中运行 Erlang Cowboy Web 服务器时出现异常

我正在尝试在 Mac OS X 1.9 中运行 Cowboy Web 服务器,并且正在获取堆栈跟踪。在 ubuntu 机器上一切运行良好,所以我相信如果有人遇到过这个问题,这一定很容易解决。

命令:

0 投票
4 回答
5065 浏览

erlang - 牛仔 HTTP POST 处理程序

我开始学习 Erlang。我想写一个简单的基于牛仔的 HTTP 服务器,它可以接收通过 HTTP POST 发送的文件。所以我创建了简单的处理程序:

此代码可以处理 GET 请求。但是如何处理 HTTP POST 请求?

0 投票
2 回答
1633 浏览

erlang - 牛仔支持多少条路线?

我正在寻找一种方法,在 Cowboy 中,将任意路径(存储在数据库中)映射到特定的博客文章。

那就是:我有几千篇博客文章,每个都可以通过几个名称访问,例如规范 URL(例如/post/42)、一些别名(例如/2013/11/25/erlang-rocks)、历史位置(例如/path-on-old-blog/12345)等。

我知道我可以简单地使用一条包罗万象的路线:

...然后在数据库中查找路径,但我正在考虑从数据库创建路由,如下所示:

即:将所有可能的路径放入路由器中,指向同一个处理程序,每条路径都有帖子的ID。

问题是:这合理吗?牛仔支持多少条路线?

0 投票
1 回答
1008 浏览

routing - 带有约束的牛仔路由不断失败

我一直在尝试使用这个原本简单的路由约束

但我不断收到同样的错误。

我的请求是curl 10.10.10.56:8080/tokens/1000 -v -H "Content-Type: application/json"

[错误] 牧场侦听器 http 在 <0.97.0> 退出时使用 cowboy_protocol:start_link/4 启动了连接过程,原因是:{function_clause,[{cowboy_router,check_constraints,[{tokenid,int},[{tokenid,<<"1000 ">>}]],[{file,"src/cowboy_router.erl"},{line,276}]},{cowboy_router,match_path,4,[{file,"src/cowboy_router.erl"},{line ,264}]},{cowboy_router,execute,2,[{file,"src/cowboy_router.erl"},{line,172}]},{cowboy_protocol,execute,4,[{file,"src/cowboy_protocol. erl"},{line,529}]}]}

注意:当我删除约束 {tokenid, int} 它工作正常。

请提供任何帮助。

谢谢。

0 投票
1 回答
196 浏览

file-permissions - 使用 relx 构建 Cowboy 快速启动项目时权限被拒绝

我正在尝试makeCowboy Quick start 项目,但我得到Permission deniedrelx. 即使我用sudo make. 有什么解决办法吗?

这是我的文件清单:

0 投票
1 回答
77 浏览

routing - Elixir Dynamo:重定向后保留数据

有没有办法处理从路由器请求到另一条路由的数据传输?

可以说,我正在处理一个请求,比如创建、删除或类似的东西,这些操作没有任何视图,并将请求重定向到另一个路由。但是,我还想发送一条“成功”消息,说明它结束得很好,或者没有。

如果我记得我在 Rails 的日子,有类似flash的东西可以做那种事情。Dynamo 中是否已经有类似的东西?还是我需要自己酿造一些东西?

谢谢 !

0 投票
2 回答
2774 浏览

erlang - 成功响应后 case_clause 错误 [cowboy rest]

由于某种原因,我的 erlang 服务器在每次请求后都会生成一个 case_clause 错误。这是我的代码:
keychain_no_auth_handler.erl

is_registered [函数]

服务器回复适当的响应,然后在每次请求后生成 case_clause 错误:

=错误报告==== 5-Feb-2014::10:32:39 === 节点“keychain@dnldd”上的进程 <0.182.0> 出错,退出值:{{case_clause,{ok,{http_req ,#Port<0.2286>,ranch_tcp,keepalive,<0.182.0>,<<4 bytes>>,'HTTP/1.1',{{127,0,0,1},49720},<<9 bytes>> ,undefined,4004,<<11 bytes>>,undefined,<<0 bytes>>,[],[{action,<<10 bytes>>}],[{<<4 bytes>>,<<14 bytes >>},{<<10 字节>>,<<10 字节>>},{<<14 字节>>,<<1 字节>>},{<<13 字节>>,<<8 字节>> },{<<6 字节>>,<<51 字节>>},{<<6 字节>>,<<12 字节>>},{<<12 字节>>,<<16 字节>>}, {<<10 字节>>,<<120 字节>>},{<<13 字节>>,<<36 字节>>},{<<6 字节>>,<<3 字节>>},{<<3 字节>>,<<1 字节>>},{<<15 字节>>, <<17 字节>>},{<<15 字节>>,<<14 字节>>}],[{<<12 字节>>,{<<11 字节>>,<<4 字节>>,[ ]}},{<<17 bytes>>,undefined},{<<13 bytes>>,undefined},{<<19 bytes>>,undefined},{<<8 bytes>>,undefined},{< <6 字节>>,[...{<<13 字节>>,未定义},{<<19 字节>>,未定义},{<<8 字节>>,未定义},{<<6 字节>>,[...{<<13 字节>>,未定义},{<<19 字节>>,未定义},{<<8 字节>>,未定义},{<<6 字节>>,[...

=错误报告==== 2014 年 2 月 5 日::10:32:39 === 牧场侦听器 keychain_http 在 <0.182.0> 退出时使用 cowboy_protocol:start_link/4 启动了连接过程,原因是:{{case_clause,{好的,{http_req,#Port<0.2286>,ranch_tcp,keepalive,<0.182.0>,<<"POST">>,'HTTP/1.1',{{127,0,0,1},49720},< <"127.0.0.1">>,undefined,4004,<<"/registered">>,undefined,<<>>,[],[{action,<<"registered">>}],[{<< "host">>,<<"127.0.0.1:4004">>},{<<"connection">>,<<"keep-alive">>},{<<"content-length">>, <<"0">>},{<<"缓存控制">>,<<"无缓存">>},{<<"origin">>,<<"chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop">>},{<<"number">>,<<"233265256262">>},{<<"content-type">>,<<"application/json ">>},{<<"user-agent">>,<<"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36"> >},{<<"邮递员令牌">>,<<"61b7c8f0-b4f8-3bde-8b99-67c141242e5a">>},{<<"接受">>,<<""user-agent">>,<<"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36">>},{<<"postman -token">>,<<"61b7c8f0-b4f8-3bde-8b99-67c141242e5a">>},{<<"接受">>,<<""user-agent">>,<<"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 Safari/537.36">>},{<<"postman -token">>,<<"61b7c8f0-b4f8-3bde-8b99-67c141242e5a">>},{<<"接受">>,<<"/ ">>},{<<"dnt">>,<<"1">>},{<<"accept-encoding">>,<<"gzip,deflate,sdch">>},{< <"accept-language">>,<<"en-US,en;q=0.8">>}],[{<<"content-type">>,{<<"application">>,<< "json">>,[]}},{<<"if-modified-since">>,undefined},{<<"if-none-match">>,undefined},{<<"if-unmodified -since">>,undefined},{<<"if-match">>,undefined},{<<"accept">>,[{{<<" ">>,<<" ">>,[ ]},1000,[]}]},{<<"connection">>,[<<"keep-alive">>]}],undefined,[{charset,undefined},{media_type,{<<"text">>,<<"html">>,[]}}],等待,未定义,<<>>,true,done,[],< <>>,undefined},undefined}},[{cowboy_rest,process_content_type,3,[{file,"src/cowboy_rest.erl"},{line,780}]},{cowboy_protocol,execute,4,[{file ,"src/cowboy_protocol.erl"},{line,529}]}]}

我在这里做错了什么?谢谢。

0 投票
1 回答
378 浏览

websocket - 启动 websocket 应用程序时出错

我正在尝试运行牛仔 Web 套接字示例,但我一直遇到错误:

我用来启动应用程序的 erlang 命令:erl -pa ebin/ -pa deps/*/ebin

然后我使用 application:start(app) 启动所需的依赖应用程序。

我使用 rebar 来编译应用程序

我正在使用的代码:

erws_app.erl

erws_handler.erl

erws_sup.erl

erws.app.src

rebar.config

非常感谢帮助解决此错误。

问候

0 投票
2 回答
1138 浏览

ssl - 通过 https 在牛仔服务器上安装 SSL 证书并运行氮气网络框架

我正在开发一个在牛仔网络服务器上使用氮气网络框架的应用程序。当我通过 http 运行服务器时效果很好。现在在生产中,应用程序必须在 https 上运行。

我已经从默认修改了氮气的etc目录中的cowboy.config文件

对这个

其中Path是我自己使用openSSL生成并签名的 SSL 证书的绝对路径。我将我的站点名称作为 domainname.com 但我首先按照 openSSl 文档创建了一个 CA

我还从默认值修改了在nitro/site/scr中找到的nitrogen_sup.erl文件中的Supervisor 回调

到下面这个

使用 sync:go() 文件编译并重新加载。但是我关闭了氮气并再次启动。

在 shell 中,我使用 curl 实用程序来测试服务器是否正在监听

响应是正确的,因为索引页面上的内容显示在 shell 中

但是,当我使用 Firefox 浏览器时,它会抛出一个安全警告,我承认除了我知道它的原因之外,我会永久添加到异常中。当我再次尝试获取页面时,浏览器会抛出此错误。

当我检查氮气控制台时,如果发现此错误报告

现在我不明白的是服务器是拒绝我的证书还是我跳过了一个步骤,或者一两个步骤出错了,或者问题出在我自己创建的 CA(根证书cacert.pem)或问题上在 openSSL 上!

我现在开始怀疑如果我生成我的CSR并将其发送到受信任的 CA,例如 symantec、digcert、thawte、geotrust 等。生成的证书也可能无法正常工作。

我需要你的帮助来解决这个关于牛仔网络服务器的氮气 https 问题。谢谢你到目前为止的所有帮助....