我有一个函数需要从mongoDB集合中检索所有用户,当我尝试通过REST端点调用它时会抛出错误.功能是:
func (usercontroller UserController) GetAllUsers(w http.ResponseWriter, r *http.Request, p httprouter.Params) {
session := usercontroller.session.Copy()
defer session.Close()
// Stub user
result := models.User{}
// get all users
if err := session.DB("Auth").C("users").Find(nil).All(&result); err != nil {
w.WriteHeader(404)
return
}
// Marshal provided interface into JSON structure
mResult, _ := json.Marshal(result)
// Write content-type, statuscode, and the data package
w.Header().Set("Content-Type", "application/json")
w.WriteHeader(200)
fmt.Fprintf(w, "%s", mResult)
}
Run Code Online (Sandbox Code Playgroud)
错误是:
2016/06/25 16:00:21 http: panic serving 127.0.0.1:49898: result argument must be a slice address
goroutine 13 [running]: …Run Code Online (Sandbox Code Playgroud) 我不确定我是否正确执行此操作,但是最终我想在目录中查找文件的最新修改日期并返回文件名。到目前为止,我的代码如下。有人可以帮助我提供比这更有效的解决方案。我真的感觉这是超级hacky。我正在做的是获取日期并删除
package main
import (
"fmt"
"io/ioutil"
"os"
"strconv"
"strings"
)
func main() {
dir := "C:\\temp\\"
files, _ := ioutil.ReadDir(dir)
for _, f := range files {
fi, _ := os.Stat(dir + f.Name())
s := strings.Split(fi.ModTime().Format("2006-01-02 15.04.05.000"), " ")
fdate, err := strconv.Atoi(strings.Replace(s[0], "-", "", -1))
if err != nil {
fmt.Println(err)
}
ftime, err := strconv.Atoi(strings.Replace(s[1], ".", "", -1))
if err != nil {
fmt.Println(err)
}
fmt.Println(fi.Name(), fdate+ftime)
}
}
Run Code Online (Sandbox Code Playgroud) 我被困住了。目前,我正在尝试模拟从应该是TIFF图像的数据库中提取二进制Blob。我在image变量中使用这个要点image.tif来做到这一点。我很确定我即将实现这一目标。问题可能与我将字符串转换为字节数组或其他方式有关。基本上,该应用程序引发异常,说明它无法创建具有0帧的PDF。在这一点上,我必须承认,我可能对此不屑一顾。有人会这么友善,并在这方面帮助我吗?
该代码包括在下面:
using System;
using System.Drawing;
using PdfSharp.Pdf;
using PdfSharp.Drawing;
using System.IO;
using System.Drawing.Imaging;
using System.Text;
namespace ConvertTifToPDFFile
{
class Program
{
static void Main(string[] args)
{
string image = "";
byte[] imageAsByteStream = Encoding.ASCII.GetBytes(image);
int imageByteStreamLength = imageAsByteStream.Length;
string base64EncodedImage = Convert.ToBase64String(imageAsByteStream);
imageAsByteStream = Encoding.ASCII.GetBytes(base64EncodedImage);
Stream imageStream = TiffImageSplitter.ByteArrayToMemoryStream(imageAsByteStream);
// Image splitImage = TiffImageSplitter.getTiffImage(imageStream, 1);
TiffImageSplitter.tiff2PDF(imageStream);
}
}
public class TiffImageSplitter
{
private static TiffImageSplitter tiff = new TiffImageSplitter();
public static void tiff2PDF(Stream imageByteStream)
{
PdfDocument doc …Run Code Online (Sandbox Code Playgroud) 我试图获取在订阅端作为 PubNub 消息传递的 JSON 值。这个代码是
package main
import (
"encoding/json"
"flag"
"fmt"
"github.com/pubnub/go/messaging"
)
type DeployMessages struct {
Server string
Repo string
}
type PNMessage struct {
Messages []DeployMessages
Id string
Channel string
}
func main() {
publishKey := flag.String("pub", "demo", "publish key")
subscribeKey := flag.String("sub", "demo", "subscribe key")
channels := flag.String("channels", "channel1, channel2", "channels to subscribe to")
pubnub := messaging.NewPubnub(*publishKey, *subscribeKey, "", "", false, "", nil)
successChannel := make(chan []byte)
errorChannel := make(chan []byte)
go pubnub.Subscribe(*channels, "", successChannel, false, …Run Code Online (Sandbox Code Playgroud)