小编Nic*_*rum的帖子

使用Azure Powershell或xpat cli如何将我的网站连接到github挂钩

使用门户网站:

使用https://manage.windowsazure.com/上的门户网站很容易.从新创建的天蓝色网站:

  1. 转到仪表板
  2. 在右侧的快速浏览选项中,单击"从源代码管理设置部署"
  3. 在"你的源代码在哪里?" 选项,选择Github
  4. 授权,然后选择回购名称和分支.
  5. BINGO:现在推送到该分支将触发将该分支部署到azure网站上.可爱.

这是问题所在:

我不能为我的生活看到如何从命令行执行此操作(使用使用npm安装的xpat-cli:"npm install azure-cli -g")

好像我应该输入类似的内容:

azure site deployment github --verbose --githubusername [username] --githubrepository [username/reponame] [sitename]
Run Code Online (Sandbox Code Playgroud)

因为"azure站点部署github"的帮助说它将:"将网站链接到github帐户进行部署"

似乎没有工作......

如果我然后输入:

azure site show [sitename]
Run Code Online (Sandbox Code Playgroud)

输出说源控件是"LocalGit"而不是github - 如果我按照上面的门户方式进行操作就是这么说的.

Source Control
data:    --------------
data:    Type:            LocalGit 
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

powershell github azure azure-web-sites

8
推荐指数
1
解决办法
153
查看次数

React Higher Order Component强制重新呈现包装组件

我正在努力了解如何在更高阶的组件中正确实现此验证行为.

===========================================

编辑:TLDR:感谢用户@noa-dev的出色建议,我在这里创建了一个React Fiddle:https://jsfiddle.net/8nLumb74/1/ 来显示问题.

简单地说:为什么我的文本框在被这个HOC包裹时会失去对编辑的关注?

我究竟做错了什么?

文本框组件:

import React from 'react'

export default React.createClass({
    changeText(e) {
        if (this.props.validate)
            this.props.validate(e.target.value)
        this.props.update(e.target.value)
    },
    componentDidMount() {
        console.log('should only be fired once')
    },
    render() {
        return (<input type="text"
            value={this.props.text}
            onChange={this.changeText} />)
    }
})
Run Code Online (Sandbox Code Playgroud)

Validator组件:

import React from 'react'

export default function (WrappedComponent) {
    const Validation = React.createClass({
        validate(text) {
            console.log('validating', text)
        },
        render() {
            return (
                <WrappedComponent
                {...this.props}
                validate={this.validate}
                />
            )
        }
    })
    return Validation
}
Run Code Online (Sandbox Code Playgroud)

父表单组件:

import React from 'react' …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

8
推荐指数
1
解决办法
2882
查看次数

在 api 网关前端的无服务器部署 lambda 中获取原始标头的正确方法是什么?

我正在使用无服务器框架在 api 网关后面部署一个简单的 lambda(用 node/express 编写)...

GET我可以看到origin标题,但在POST我不能 - 它没有传递到我的 lambda 函数中!

任何人都知道为什么不这样做以及如何让它通过?

背景:

我确实注意到在POST原点中似乎附加到日志中的查询字符串:

originalUrl: '/dev/endpoint?Origin=MY%20ORIGIN%20HERE',
Run Code Online (Sandbox Code Playgroud)

因此,我可以从查询字符串值中提取源,但我想知道这是否是在无服务器框架上执行操作的正确方法,还是应该设置一些内容以允许 API 网关通过POST类似方式发送源它GET呢?为什么这两个动词的行为不同?

我的代码/配置:

serverless.yml 中的函数定义如下所示:

myGetFunction:
  handler: lambda/index.handler
  events:
    - http:
        path: /endpoint
        method: get
        cors: true
myPostFunction:
  handler: lambda/index.handler
  events:
    - http:
        path: /endpoint
        method: post
        cors: true
Run Code Online (Sandbox Code Playgroud)

如果我只是将以下内容放入我的 index.handler 中:

app.use((req, res) => {
  console.log('LOG REQUEST', req)
  res.send('interesting')
})
Run Code Online (Sandbox Code Playgroud)

在我的处理程序函数中,我只想获取发送的原始请求标头。在GET它的方便:CloudWatch的日志显示,它是在头对象中的GET请求提供:

headers: 
  {
    accept: '*/*',
    'accept-encoding': 'gzip, deflate', …
Run Code Online (Sandbox Code Playgroud)

aws-lambda aws-api-gateway serverless-framework

6
推荐指数
1
解决办法
2582
查看次数

代理自己的socket.io服务器时如何使Webpack热模块替换(react-hot-loader)工作

我有一个正在使用socket.io的节点快速应用程序。该应用程序通过webpack的开发服务器代理,因为我想在客户端react应用程序中使用热模块替换(该模块可通信回节点应用程序上的套接字代码。)

socket.io但是,如果我添加了侦听器,则会破坏热模块更换的内容。我猜是因为我的监听器正在接收消息而不是hmr监听器?

问题是,当我保存将被热加载的文件时,我在chrome开发工具中获得了以下内容,并且没有热加载:

[WDS] App updated. Recompiling...
client?eeaa:52 [WDS] Proxy error.
client?eeaa:54 cannot proxy to http://127.0.0.1:1338 (read ECONNRESET)
client?eeaa:90 [WDS] App hot update...
socket.io.js:1456 GET http://localhost:1339/socket.io/?EIO=3&transport=polling&t=LA7JXr9&sid=r1NFzh1HOD5GcbN0AAAA 502 (Bad Gateway)
client?eeaa:25 [WDS] App updated. Recompiling...
client?eeaa:90 [WDS] App hot update...
socket.io.js:1456 POST http://localhost:1339/socket.io/?EIO=3&transport=polling&t=LA7Jckl&sid=r1NFzh1HOD5GcbN0AAAA 400 (Bad Request)
Run Code Online (Sandbox Code Playgroud)

(的主体400 (Bad Request)为:

{"code":1,"message":"Session ID unknown"}
Run Code Online (Sandbox Code Playgroud)

有人知道如何正确设置吗?

webpack.config.js当前是:

var path    = require('path');
var webpack = require('webpack');

module.exports = {
  entry:  [
    'webpack-dev-server/client?http://127.0.0.1:1339/',
    'webpack/hot/only-dev-server',
    './src/client/main.js'
  ],
  output: {
    path:     path.join(__dirname, 'dist'), …
Run Code Online (Sandbox Code Playgroud)

socket.io webpack webpack-hmr

5
推荐指数
0
解决办法
619
查看次数

错误:调用Configuration.BuildSessionFactory()时"无法同时获取多个包"

升级到NHibernate 2.1后,我们收到此错误.

[QueryException: Cannot simultaneously fetch multiple bags.]
   NHibernate.Loader.BasicLoader.PostInstantiate() +418
   NHibernate.Loader.Entity.EntityLoader..ctor(IOuterJoinLoadable persister, String[] uniqueKey, IType uniqueKeyType, Int32 batchSize, LockMode lockMode, ISessionFactoryImplementor factory, IDictionary`2 enabledFilters) +123
   NHibernate.Loader.Entity.BatchingEntityLoader.CreateBatchingEntityLoader(IOuterJoinLoadable persister, Int32 maxBatchSize, LockMode lockMode, ISessionFactoryImplementor factory, IDictionary`2 enabledFilters) +263
   NHibernate.Persister.Entity.AbstractEntityPersister.CreateEntityLoader(LockMode lockMode, IDictionary`2 enabledFilters) +26
   NHibernate.Persister.Entity.AbstractEntityPersister.CreateLoaders() +57
   NHibernate.Persister.Entity.AbstractEntityPersister.PostInstantiate() +1244
   NHibernate.Persister.Entity.SingleTableEntityPersister.PostInstantiate() +18
   NHibernate.Impl.SessionFactoryImpl..ctor(Configuration cfg, IMapping mapping, Settings settings, EventListeners listeners) +3261
   NHibernate.Cfg.Configuration.BuildSessionFactory() +87
Run Code Online (Sandbox Code Playgroud)

如果没有进入NHibernate源,看起来我看不出哪个映射会产生问题.

这是一个非常古老的应用程序,带有大量映射文件,大量映射中包含一对多的包,所有这些都是实例化的.

例如:

    <bag name="Ownership" lazy="true" cascade="all" inverse="true" outer-join="auto" where="fkOwnershipStatusID!=6">
        <key column="fkStakeHolderID"/>
        <one-to-many class="StakeholderLib.Ownership,StakeholderLib" />
    </bag>
Run Code Online (Sandbox Code Playgroud)

映射到:

public virtual IList Ownership { …
Run Code Online (Sandbox Code Playgroud)

.net c# nhibernate

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

如何构建nginx docker容器以及它所服务的资产的构建

我在docker容器中运行nginx服务,它提供一些静态文件和1个编译文件(由webpack构建的js包.)

我不希望我的源文件在nginx容器中 - 而是我只想要允许nginx在那里提供的文件.

因此,我目前有2个docker容器 - 1个生成.js包,它必须在构建第二个docker镜像之前运行 - 然后从主机中获取捆绑文件(由第一个容器的运行生成). )

这似乎是错的,因为我的nginx图像构建应该可以立即从源代码中运行.

但是,如果我将webpack构建添加到nginx图像dockerfile中,那么我将不得不将整个源复制到容器中,这也感觉不对.

我错过了什么?

(注意:我考虑过复制那里的文件,然后进行构建然后只是rm我不想要的文件,但它看起来很蹩脚,并且会不必要地增加容器的大小.如果这是正确的方法,我愿意接受! )

nginx docker webpack

0
推荐指数
1
解决办法
1077
查看次数