lx86 发表于 2018-9-20 07:03:35

golang thrift 总结一下网络上的一些坑

// Autogenerated by Thrift Compiler (0.9.3)  

// DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING  

  
package main
  

  
import (
  
"flag"
  
"fmt"
  
"git.apache.org/thrift.git/lib/go/thrift"
  
"math"
  
"net"
  
"net/url"
  
"os"
  
"strconv"
  
"strings"
  
"vic/rpc"
  
)
  

  
func Usage() {
  
fmt.Fprintln(os.Stderr, "Usage of ", os.Args, " [-h host:port] [-u url] [-f] function ]:")
  
flag.PrintDefaults()
  
fmt.Fprintln(os.Stderr, "\nFunctions:")
  
fmt.Fprintln(os.Stderr, "Video request(string vid, string cid, string platform, string url, string clientVersion)")
  
fmt.Fprintln(os.Stderr)
  
os.Exit(0)
  
}
  

  
func main() {
  
flag.Usage = Usage
  
var host string
  
var port int
  
var protocol string
  
var urlString string
  
var framed bool
  
var useHttp bool
  
var parsedUrl url.URL
  
var trans thrift.TTransport
  
_ = strconv.Atoi
  
_ = math.Abs
  
flag.Usage = Usage
  
flag.StringVar(&host, "h", "localhost", "Specify host and port")
  
flag.IntVar(&port, "p", 9090, "Specify port")
  
flag.StringVar(&protocol, "P", "binary", "Specify the protocol (binary, compact, simplejson, json)")
  
flag.StringVar(&urlString, "u", "", "Specify the url")
  
flag.BoolVar(&framed, "framed", false, "Use framed transport")
  
flag.BoolVar(&useHttp, "http", false, "Use http")
  
flag.Parse()
  

  
if len(urlString) > 0 {
  
parsedUrl, err := url.Parse(urlString)
  
if err != nil {
  
fmt.Fprintln(os.Stderr, "Error parsing URL: ", err)
  
flag.Usage()
  
}
  
host = parsedUrl.Host
  
useHttp = len(parsedUrl.Scheme)
页: [1]
查看完整版本: golang thrift 总结一下网络上的一些坑