小编use*_*984的帖子

Angular2模块没有导出的成员

对于在Angular2中具有身份验证的网站,我想在主应用程序组件中使用身份验证子模块的组件.但是,我不断收到以下错误:

app/app.component.ts(3,10): error TS2305: Module '"<dir>/app/auth/auth.module"' has no exported member 'SigninComponent'.

甚至在导出SigninComponent之后.

项目文件夹结构如下所示:

在此输入图像描述

应用/认证/ auth.module.ts:

import { NgModule }       from '@angular/core';
import { CommonModule }   from '@angular/common';
import { FormsModule }    from '@angular/forms';

import { RegisterComponent }    from './components/register.component';
import { SigninComponent }    from './components/signin.component';
import { HomeComponent }    from './components/home.component';

import { AuthService } from './services/auth.service';
import { AuthHttp } from './services/auth-http';

@NgModule({
  imports: [
      CommonModule,
      FormsModule
  ],
  declarations: [
      RegisterComponent,
      SigninComponent,
      HomeComponent
  ],
  providers: [
      AuthService,
      AuthHttp
  ], …
Run Code Online (Sandbox Code Playgroud)

javascript typescript angular2-modules angular

41
推荐指数
5
解决办法
14万
查看次数

grpc Python:忽略不受信任的证书

我想为我信任的来源创建一个 grpc 通道,但我缺少其证书。使用默认凭据设置安全通道失败:

import gprc
ssh_channel = grpc.secure_channel(<gprc url>, grpc.ssl_channel_credentials())
grpc.channel_ready_future(ssh_channel).result()
Run Code Online (Sandbox Code Playgroud)

结果是:

E1017 10:05:15.783011100   11539 ssl_transport_security.cc:1229] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED.
E1017 10:05:16.846366639   11539 ssl_transport_security.cc:1229] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED.
E1017 10:05:18.688887874   11539 ssl_transport_security.cc:1229] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED.
E1017 10:05:21.557399186   11539 ssl_transport_security.cc:1229] Handshake failed with fatal error SSL_ERROR_SSL: error:1000007d:SSL routines:OPENSSL_internal:CERTIFICATE_VERIFY_FAILED.
Run Code Online (Sandbox Code Playgroud)

我知道这是可能的,因为例如在 Java 中,会执行以下操作:

import io.grpc.netty.GrpcSslContexts;
import io.grpc.netty.NettyChannelBuilder;
import io.netty.handler.ssl.SslContext;
import io.netty.handler.ssl.util.InsecureTrustManagerFactory;
...
sslContext = GrpcSslContexts.forClient().trustManager(InsecureTrustManagerFactory.INSTANCE).build();
channel = NettyChannelBuilder.forAddress(<gprc url>, 443).sslContext(sslContext).build(); …
Run Code Online (Sandbox Code Playgroud)

python ssl grpc

11
推荐指数
1
解决办法
3305
查看次数

使用 osxfs 的 mac docker 卷挂载不起作用

Docker Desktop for Mac 开始osxfs用于在 MacOS 上支持卷安装。根据他们的页面,这样的命令应该将~/Desktop目录挂载到 docker 容器:

docker run -it -v ~/Desktop:/Desktop r-base bash
Run Code Online (Sandbox Code Playgroud)

虽然我确实Desktop按预期看到了一个目录,但它的内容是空的:

root@80cb534e4eeb:/# ls
bin  boot  Desktop  dev  etc  home  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var
root@80cb534e4eeb:/# ls Desktop/
root@80cb534e4eeb:/# exit
exit 
Run Code Online (Sandbox Code Playgroud)

虽然Desktop本地目录中肯定有文件

Users-MacBook-Pro:~ user$ ls Desktop/
Screen Shot 2019-03-25 at 10.34.58.png      Screen Shot 2019-03-25 at 22.26.10.png      Screen Shot 2019-03-27 at 07.34.55.png
Screen Shot 2019-03-25 at 10.35.59.png …
Run Code Online (Sandbox Code Playgroud)

macos mount docker

5
推荐指数
1
解决办法
3146
查看次数

使用aiohttp嵌套“与...同步”

我想创建一个使用aiohttp进行API调用的调度程序类。我尝试了这个:

import asyncio
import aiohttp

class MySession:
    def __init__(self):
        self.session = None

    async def __aenter__(self):
        async with aiohttp.ClientSession() as session:
            self.session = session
            return self

    async def __aexit__(self, exc_type, exc_val, exc_tb):
        if self.session:
            await self.session.close()

async def method1():
    async with MySession() as s:
        async with s.session.get("https://www.google.com") as resp:
            if resp.status == 200:
                print("successful call!")

loop = asyncio.get_event_loop()
loop.run_until_complete(method1())
loop.close()
Run Code Online (Sandbox Code Playgroud)

但这只会导致错误:RuntimeError: Session is closed。该__aenter__功能的第二种方法:

    async def __aenter__(self):
        self.session = aiohttp.ClientSession()
        return self
Run Code Online (Sandbox Code Playgroud)

效果很好。这是一个好结构吗?它不遵循如何使用aiohttp的示例。还想知道为什么第一种方法不起作用?

python python-asyncio aiohttp

3
推荐指数
1
解决办法
377
查看次数