小编Pum*_*eed的帖子

更改Gitlab CI Runner用户

目前,当我在GitlabCI中开始构建时,它在gitlab-runner用户下运行.我想将其改为公司的内部用户.我没有找到/etc/gitlab-runner/config.toml的任何参数来解决这个问题.

我目前的配置:

concurrent = 1
[[runners]]
  name = "deploy"
  url = ""
  token = ""
  executor = "shell"
Run Code Online (Sandbox Code Playgroud)

gitlab gitlab-ci gitlab-ci-runner

31
推荐指数
3
解决办法
3万
查看次数

如何使用getUserMedia通过用户的网络摄像头捕获图像?

我想在网上制作一个程序,通过用户的网络摄像头捕获图像.

我正在使用getUserMediaWeb API.这是我的代码,但它不起作用.如何更改它以捕获网络摄像头图像?

<div id="container">
    <video autoplay="true" id="videoElement">

    </video>
</div>
<script>

</script>
Run Code Online (Sandbox Code Playgroud)

有JS:

var video = document.querySelector("#videoElement");

navigator.getUserMedia, elem = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia || navigator.oGetUserMedia;

console.log(navigator.getUserMedia);

if (navigator.getUserMedia) {
    navigator.getUserMedia({video: true}, handleVideo, videoError);
}

function handleVideo(stream) {
    video.src = window.URL.createObjectURL(stream);
}

function videoError(e) {
    // do something
}
Run Code Online (Sandbox Code Playgroud)

javascript html5 getusermedia

12
推荐指数
2
解决办法
4万
查看次数

在模拟器中启动应用程序后,"React native run android"立即停止

我正在尝试测试我的Android应用程序,但是当我react-native run-android在设备上启动后立即停止而没有错误.

我懂了:

This build could be faster, please consider using the Gradle Daemon: https://docs.gradle.org/2.14.1/userguide/gradle_daemon.html
Running adb -s emulator-5556 reverse tcp:8081 tcp:8081
Starting the app on emulator-5556 (adb -s emulator-5556 shell am start -n com.app/.MainActivity)...
Starting: Intent { cmp=com.app/.MainActivity }
Run Code Online (Sandbox Code Playgroud)

我收到提示但不总是,如果我继续尝试它有时运行正常,但我必须运行10-15次.SDK版本为25,我遵循React Native Getting Started安装指南.

  • 操作系统:Fedora 24
  • React-native:0.42.0

更新:

我试着用react-native start它,据说对我来说,Loading dependency graph... ERROR Packager can't listen on port 8081但我不明白为什么前面的命令没有对我说.在这种情况下,我可以用,更改端口--port 9000,但我没有在react-native run-android命令中找到任何其他标志.

更新2:

似乎问题出现了,因为远程调试器在设备上打开并且它连接到:8081端口上的远程调试器,并且adb想要通过:8081为旧的远程调试创建一个新的服务器用于移动应用程序仍占用:8081端口,因此不允许创建新端口.我关闭了远程调试器,它运行没有问题.我不确定这可能是问题所在.

android android-studio react-native

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

Golang gorm 嘲讽

我在我的项目中使用gorm。我可以在没有数据库连接的情况下模拟这个数据库 orm 进行测试吗?我们有 CI 工具的问题,我没有数据库或数据库有足够的数据进行测试。另一方面,我不想在每次测试时都设置一个数据库,因为在这些情况下,CI 工具每次都会创建一个容器来运行测试。

测试数据库相关方法的最佳方法是什么?我在我的解决方案中使用依赖注入,因此很容易用模拟数据库替换数据库。但是gorm 有很多与orm 相关的功能。

这是一个处理程序,例如:

func tokenIntrospectionHandler(db *gorm.DB) http.HandlerFunc {
    return http.HandlerFunc(func(w http.ResponseWriter, req *http.Request) {
        defer req.Body.Close()
        token := req.FormValue("token")
        var resp Response
        json.NewEncoder(w).Encode(resp)
    })
}
Run Code Online (Sandbox Code Playgroud)

database testing mocking go go-gorm

7
推荐指数
1
解决办法
1万
查看次数

Golang从文件中嵌入了html

如果我有这样的HTML文件,我怎么能在Golang中做:

<html>
  <head lang="en">

  </head>
  <body>
    <header>{{.Header}}</header>
    <div class="panel panel-default">

    </div>
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

我想将一部分代码嵌入到其他文件的头文件标签中,如下所示:

<div id="logo"></div><div id="motto"></div>
Run Code Online (Sandbox Code Playgroud)

我的尝试:

header, _ := template.ParseFiles("header.html")
c := Content{Header: ""}
header.Execute(c.Header, nil)

index := template.Must(template.ParseFiles("index.html"))
index.Execute(w, c)
Run Code Online (Sandbox Code Playgroud)

templates go go-templates

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

FreeOSMemory()正在制作中

我在一个包含tcp服务器的包中使用goroutine.大部分时间的响应非常繁重,但是当例程结束时,它不会从内存中清除.

func Handle() {
    service := ":7777"
    tcpAddr, err := net.ResolveTCPAddr("tcp4", service)
    checkError(err)
    listener, err := net.ListenTCP("tcp", tcpAddr)
    checkError(err)
    defer listener.Close()

    for {
        conn, err := listener.Accept()
        checkError(err)
        go handleRequest(conn, db)

    }
}

func handleRequest(conn net.Conn, db *sql.DB) {
    message := make([]byte, 0, 4096)
    tmp := make([]byte, 256)
    n, err := conn.Read(tmp)
    if err != nil {
        if err != io.EOF {
            fmt.Println("read error:", err)
        }
    }
    message = append(message, tmp[:n]...)
    fmt.Println("Message Received:", string(message))
    // do something to get resp …
Run Code Online (Sandbox Code Playgroud)

garbage-collection memory-leaks go

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

Redux axios 请求取消

我有一个带有 Redux 操作和 reducer 的 React Native 应用程序。我正在使用 redux-thunk 调度来等待异步调用。我的应用程序中有一个操作:

export const getObjects = (id, page) => {
    return (dispatch) => {
        axios.get(`URL`)
            .then(response => {
                dispatch({ type: OBJECTS, payload: response });
            }).catch(error => {
                throw new Error(`Error: objects -> ${error}`);
            });
    };
};
Run Code Online (Sandbox Code Playgroud)

这工作正常,但有时用户在操作完成请求之前单击后退按钮,我必须取消它。我怎样才能在一个单独的动作中做到这一点?我读了这个,但我没有在 axios 中找到任何用于中止的选项。我读过 axios取消,但它在函数范围内创建了一个取消方法,我无法返回,因为 JS 不支持多次返回。

在其他 Redux 操作中取消 axios 请求的最佳方法是什么?

reactjs redux axios

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

从静态函数达到redux状态

我有一个React Native应用程序,其中有一个名为Helpers的类。这些是一组与应用程序相关的静态帮助器功能。通常,我称他们为Helpers.functionName()。从这种静态方法访问redux存储的最佳方法是什么?我想对其进行修改并阅读。

我有这样的助手:

class Helpers extends Component {
  static getState(){
    return state;
  }
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用connect,但是在getState函数内部,this.props是未定义的。

react-native redux

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

如果我在Javascript中使用delete,var x和simple x声明有什么区别?

x = 42;         // creates the property x on the global object
var y = 43;     // creates the property y on the global object, and marks it as non-configurable


// x is a property of the global object and can be deleted
delete x;       // returns true

// y is not configurable, so it cannot be deleted                
delete y;       // returns false 
Run Code Online (Sandbox Code Playgroud)

我不明白不可配置的意思是什么.为什么我不能删除y?

javascript

4
推荐指数
2
解决办法
86
查看次数

-t选项不能在iptables-restore中使用

当我想从文件恢复我的iptables规则时,我收到此错误.

iptables-restore v1.4.21: The -t option (seen in line 5) cannot be used in iptables-restore.

Error occurred at line: 5
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
Run Code Online (Sandbox Code Playgroud)

有我的iptables:

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-t nat -A POSTROUTING -o eth0 -j MASQUERADE
-A FORWARD -i eth0 -o lxcbr0 -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i lxcbr0 -o eth0 -j ACCEPT
COMMIT
Run Code Online (Sandbox Code Playgroud)

没有-t选项我不能这样做.

linux restore iptables

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