小编dio*_*ovk的帖子

如何在Elixir中使用"with"关键字,它的用途是什么?

在elixir 1.2中,他们已经包含了关键字"with",但它并不完全清楚它是什么.

我将如何以及在何种情况下使用它?

elixir

47
推荐指数
2
解决办法
8165
查看次数

调用apiclient.discovery.build时,URL的SSL证书无效和/或缺失

所以我在本地运行我的谷歌端点dev_appserver.py.我使用API​​资源管理器来测试应用程序.

我用来创建服务的代码,所以我可以调用API如下:

from apiclient.discovery import build 
from oauth2client.client import GoogleCredentials
credentials = GoogleCredentials.get_application_default()
service = build('speech', 'v1beta1', credentials=credentials)
Run Code Online (Sandbox Code Playgroud)

我收到SSL错误(无效和/或缺少SSL证书),即使我通过浏览器访问指定的URL它工作正常(即绿色挂锁出现).

我不确定发生了什么变化,但这不久前工作正常.

我试图禁用SSL检查,但无法进行.

完整日志如下:

INFO     2017-01-02 03:12:02,724 discovery.py:267] URL being requested: GET https://www.googleapis.com/discovery/v1/apis/speech/v1beta1/rest?userIp=0.2.0.3
ERROR    2017-01-02 03:12:03,022 wsgi.py:263] 
Traceback (most recent call last):
  File "/home/vini/opt/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 240, in Handle
    handler = _config_handle.add_wsgi_middleware(self._LoadHandler())
  File "/home/vini/opt/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 299, in _LoadHandler
    handler, path, err = LoadObject(self._handler)
  File "/home/vini/opt/google-cloud-sdk/platform/google_appengine/google/appengine/runtime/wsgi.py", line 85, in LoadObject
    obj = __import__(path[0])
  File "/mnt/b117/home/vini/udacity/cerci-endpoint/api.py", line 28, in <module>
    service = build('speech', …
Run Code Online (Sandbox Code Playgroud)

python ssl google-app-engine google-api-python-client

17
推荐指数
1
解决办法
3208
查看次数

如何固定板条箱的间接依赖关系?

我的项目 A 依赖于依赖于库 C 的库 B。

库 B 将依赖版本设置为"*"(any),因此 Cargo 将下载最新版本的 C。

如何指示 Cargo 使用特定版本的库 C 构建库 B?


我正在尝试建造

当前构建失败,但我可以看到最后一次成功构建,包括 Rust 和 Cargo 包版本。

我下载了构建中使用的特定 Rust nightly,并通过编辑 Cargo.toml 将铁的直接依赖项设置为该构建中使用的依赖项:

[dependencies]
hyper = "0.0.18"
typemap = "0.0.5"
url = "0.2.9"
Run Code Online (Sandbox Code Playgroud)

rust-serialized,它是urltime包的依赖项,下载为最新版本,该版本不与我的特定 Rust 版本一起编译。

如果我使用上面 Travis 构建中使用的版本,我相信它会成功编译。

rust rust-cargo

10
推荐指数
1
解决办法
5446
查看次数

如何将可信证书添加到HTTPPoison/hackney?

当我尝试:

HTTPoison.get! "https://facebook.com"
Run Code Online (Sandbox Code Playgroud)

我明白了:

** (HTTPoison.Error) {:tls_alert, 'unknown ca'}
[error] SSL: :certify: ssl_handshake.erl:1606:Fatal error: unknown ca

    (httpoison) lib/httpoison.ex:66: HTTPoison.request!/5
Run Code Online (Sandbox Code Playgroud)

这是预期的,因为在我的公司,我需要相信防火墙的证书出来.

我信任系统范围内的证书(.cer文件),这就是为什么wget在访问httpsURL 时不会给我ssl错误.但似乎hackney/HTTPoison忽略了这种配置.

如何让HTTPoison/hackney将证书识别为可信证书?

erlang ssl elixir httpoison

7
推荐指数
2
解决办法
1764
查看次数

使用RegEx扫描组

以下代码的返回完全不是我所期望的:

iex(12)> Regex.scan(%r/(?<groupname>a)b(c)/g,"abcdabcd", capture: :groups)
[["a"], ["a"]]
Run Code Online (Sandbox Code Playgroud)

有2组,但只有命名的组出现在结果中.并且组名完全被忽略.

如果我使用named_capture,我会得到以下内容:

iex(14)> Regex.named_captures(%r/(?<groupname>a)b(c)/g,"abcdabcd", capture: :groups)
[groupname: "a"]
Run Code Online (Sandbox Code Playgroud)

好吧,我认为结果

Regex.scan(%r/(?<groupname>a)b(c)/g,"abcdabcd", capture: :groups)
Run Code Online (Sandbox Code Playgroud)

应该是

[["a", "c"], ["a", "c"]]    #=> including "anonymous groups"
Run Code Online (Sandbox Code Playgroud)

要么

[[groupname: "a"], [groupname: "a"]] #=> include group name in the results
Run Code Online (Sandbox Code Playgroud)

所以我的问题是为什么在使用Regex.scan时我必须在组捕获中命名组才会完全忽略它们?

regex elixir

4
推荐指数
1
解决办法
1485
查看次数