小编Kug*_*gel的帖子

interface{} to []byte conversion in golang

I am trying to unmarshal a data which is of type interface. So I need to convert the interface type to []byte and pass it to unmarshall. i tried

  1. err := json.Unmarshal([]byte(kpi), &a) => failed
  2. i tired to convert the interface to byte by using kpidata, res := kpi.([]byte) => failed, kpidata is nil

So is there any way we can convert it?

Example: https://play.golang.org/p/5pqQ0DQ94Dp

json go

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

将Go webserver部署到Google计算引擎

我刚开始测试Google计算引擎.现在我正在尝试在其上部署我的Go(golang)应用程序,以便可以从外部访问它.我使用计算引擎支持app引擎,因为我的应用程序需要一个MongoDB数据库.

我做了以下事情:

  1. 创建计算引擎实例
  2. 设置防火墙,使端口1234打开,IP是静态的
  3. 安装MongoDB
  4. 上传我的申请
  5. 开始

应用程序启动就好了.但如果我在浏览器中使用ip:1234打开它,我无法从外部访问它.我也尝试以root用户身份在端口80上启动它,但这也不起作用.

服务器配置如下:

{
    "host": "localhost:1234",
    "dbhost": "localhost",
    "db": "dbname",
    "logfile": "log"
}
Run Code Online (Sandbox Code Playgroud)

当我使用apache服务器时,它服务器端口80并显示页面...操作系统是ubuntu 14.04.

主要简单地将一些处理程序添加到多路复用器并将FileServer添加到公共目录:

mux.Handle("/", http.FileServer(http.Dir(public_dir)))
// [...]
if err := http.ListenAndServe(cfg.Host, mux); err != nil {
    panic(err)
}
Run Code Online (Sandbox Code Playgroud)

那么这里的问题是什么?

http go google-compute-engine server

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

Golang:将界面转换回原始类型

即使我查阅了Go文档和示例,我也无法找到答案.是否可以动态地将接口​​转换回其原始类型?我知道我可以这样做:

var myint int = 5
var myinterface interface{}
myinterface = myint
recovered, _ := myinterface.(int)
fmt.Println(recovered)
Run Code Online (Sandbox Code Playgroud)

但在这里我知道这种类型.我想有一个未知类型(接口)的地图,并使用反射将其强制转换,如下所示:

// put/pop writes/read to/from a map[string]interface{}
var myint int = 5
put("key" myint)
pop("key", &myint) // this should also work for objects or any other type
Run Code Online (Sandbox Code Playgroud)

像这样,它可以在一个地图中存储任何东西.当调用pop()(第二个参数是接口)时,用户将输入类型.是否有可能使用反射来实现这一目标?

reflection go

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

如何使用gdk_device_get_position()?

我试图在Gdk屏幕上找到指针位置并找到gdk_display_get_pointer(),它工作正常,但它被标记为已弃用并且gdk_device_get_position()现在指的是.

但是我该如何使用这个功能呢?我不能得到一个GdkDevice,因为没有工厂,也没有构造函数.

gtk position glib cursor gdk

5
推荐指数
2
解决办法
926
查看次数

Vue 应用程序中未出现折线图的 Chartjs 背景颜色

我正在尝试在 Vue 3 应用程序中使用 Chart.js 3.6.0 为折线图渲染背景(渐变,但简单的颜色也不起作用)。用户可以在条形图和折线图之间切换(对于同一数据集)。有趣的是,它适用于条形图:

在此输入图像描述

但折线图没有渐变:

在此输入图像描述

这是数据配置:

data: {
    labels: props.labels as string[],
    datasets: [
        {
            data: props.data as number[],
            backgroundColor: getBackgroundColor(), // returns the gradient
            borderColor: getBorderColor(), // returns a color
            fill: true // tried all possible values for this
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我尝试删除所有可能导致问题的内容,但即使是带有硬编码数据的最基本配置也不起作用。

使用 ref 访问画布:

<template>
    <canvas class="statistics-canvas" ref="canvas" width="100%" height="100%"></canvas>
</template>

<script lang="ts">
    // ...
    setup() {
        const canvas = ref(document.createElement("canvas"));
        let chart: Chart;

        onMounted(() => createChart());

        function createChart() {
            chart = new Chart(canvas.value, …
Run Code Online (Sandbox Code Playgroud)

javascript typescript vue.js chart.js vuejs3

2
推荐指数
1
解决办法
1686
查看次数