本文整理汇总了Golang中github.com/apache/brooklyn-client/cli/net.Network.NewPostRequest方法的典型用法代码示例。如果您正苦于以下问题:Golang Network.NewPostRequest方法的具体用法?Golang Network.NewPostRequest怎么用?Golang Network.NewPostRequest使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类github.com/apache/brooklyn-client/cli/net.Network
的用法示例。
在下文中一共展示了Network.NewPostRequest方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: AddPolicy
// WIP
func AddPolicy(network *net.Network, application, entity, policy string, config map[string]string) (models.PolicySummary, error) {
path := fmt.Sprintf("/v1/applications/%s/entities/%s/policies", application, entity)
data := url.Values{}
data.Set("policyType", policy)
//data.Add("config", config)
req := network.NewPostRequest(path, bytes.NewBufferString(data.Encode()))
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
var policySummary models.PolicySummary
body, err := network.SendRequest(req)
if err != nil {
return policySummary, err
}
err = json.Unmarshal(body, &policySummary)
return policySummary, err
}
示例2: TriggerEffector
func TriggerEffector(network *net.Network, application, entity, effector string, params []string, args []string) (string, error) {
if len(params) != len(args) {
return "", errors.New(strings.Join([]string{"Parameters not supplied:", strings.Join(params, ", ")}, " "))
}
path := fmt.Sprintf("/v1/applications/%s/entities/%s/effectors/%s", application, entity, effector)
data := url.Values{}
for i := range params {
data.Set(params[i], args[i])
}
req := network.NewPostRequest(path, bytes.NewBufferString(data.Encode()))
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
body, err := network.SendRequest(req)
if err != nil {
return "", err
}
return string(body), nil
}