commit | 5cee452ea6e7cf079c58947c54dd7334b83b7104 | [log] [tgz] |
---|---|---|
author | Rodric Rabbah <rabbah@us.ibm.com> | Thu Feb 16 19:56:04 2017 -0500 |
committer | Vincent Hou <shou@us.ibm.com> | Tue Jun 06 12:03:48 2017 -0400 |
tree | 20a6abadd2776aa5689a9011beabaf5dbfa9ac38 | |
parent | 947c1f67812fda631b43febbd9431d3f44c955db [diff] |
Remove meta packages, normalize on web actions. Adds (whisk) authenticated web actions. Removes result projection for http actions.
go-whisk
is a Go client library for accessing the IBM Whisk API.
import "github.ibm.com/BlueMix-Fabric/go-whisk/whisk"
Construct a new whisk client, then use various services to access different parts of the whisk api. For example to get the hello
action:
client, _ := whisk.NewClient(http.DefaultClient, nil)
action, resp, err := client.Actions.List("hello")
Some API methods have optional parameters that can be passed. For example, to list the first 30 actions, after the 30th action:
client, _ := whisk.NewClient(http.DefaultClient, nil)
options := &whisk.ActionListOptions{
Limit: 30,
Skip: 30,
}
actions, resp, err := client.Actions.List(options)
Whisk can be configured by passing in a *whisk.Config
object as the second argument to whisk.New( ... )
. For example:
u, _ := url.Parse("https://whisk.stage1.ng.bluemix.net:443/api/v1/")
config := &whisk.Config{
Namespace: "_",
AuthKey: "aaaaa-bbbbb-ccccc-ddddd-eeeee",
BaseURL: u
}
client, err := whisk.Newclient(http.DefaultClient, config)
import (
"net/http"
"net/url"
"github.ibm.com/BlueMix-Fabric/go-whisk/whisk"
)
func main() {
client, err := whisk.NewClient(http.DefaultClient, nil)
if err != nil {
fmt.Println(err)
os.Exit(-1)
}
options := &whisk.ActionListOptions{
Limit: 30,
Skip: 30,
}
actions, resp, err := client.Actions.List(options)
if err != nil {
fmt.Println(err)
os.Exit(-1)
}
fmt.Println("Returned with status: ", resp.Status)
fmt.Println("Returned actions: \n%+v", actions)
}