package main import "C" import ( "bytes" "fmt" "gitlab.alibaba-inc.com/pai_biz_arch/pairec" "io/ioutil" "net/http/httptest" "os" ) //export CommandRun func CommandRun(configFile *C.char) bool { file := C.GoString(configFile) os.Setenv("CONFIG_PATH", file) os.Setenv("RUN_MODE", "COMMAND") pairec.Run() return true } //export Recommend func Recommend(requestBody *C.char) *C.char { body := C.GoString(requestBody) readBuf := bytes.NewBufferString(body) req := httptest.NewRequest("POST", "/api/recall", readBuf) w := httptest.NewRecorder() pairec.PairecApp.Handlers.ServeHTTP(w, req) resp := w.Result() defer resp.Body.Close() responseBody, _ := ioutil.ReadAll(resp.Body) fmt.Println(resp.StatusCode) fmt.Println(string(responseBody)) return C.CString(string(responseBody)) } func main() { }