@ -1,62 +0,0 @@ | |||
# httplib | |||
httplib is an libs help you to curl remote url. | |||
# How to use? | |||
## GET | |||
you can use Get to crawl data. | |||
import "httplib" | |||
str, err := httplib.Get("http://beego.me/").String() | |||
if err != nil { | |||
t.Fatal(err) | |||
} | |||
fmt.Println(str) | |||
## POST | |||
POST data to remote url | |||
b:=httplib.Post("http://beego.me/") | |||
b.Param("username","astaxie") | |||
b.Param("password","123456") | |||
str, err := b.String() | |||
if err != nil { | |||
t.Fatal(err) | |||
} | |||
fmt.Println(str) | |||
## set timeout | |||
you can set timeout in request.default is 60 seconds. | |||
set Get timeout: | |||
httplib.Get("http://beego.me/").SetTimeout(100 * time.Second, 30 * time.Second) | |||
set post timeout: | |||
httplib.Post("http://beego.me/").SetTimeout(100 * time.Second, 30 * time.Second) | |||
- first param is connectTimeout. | |||
- second param is readWriteTimeout | |||
## debug | |||
if you want to debug the request info, set the debug on | |||
httplib.Get("http://beego.me/").Debug(true) | |||
## support HTTPS client | |||
if request url is https. You can set the client support TSL: | |||
httplib.SetTLSClientConfig(&tls.Config{InsecureSkipVerify: true}) | |||
more info about the tls.Config please visit http://golang.org/pkg/crypto/tls/#Config | |||
## set cookie | |||
some http request need setcookie. So set it like this: | |||
cookie := &http.Cookie{} | |||
cookie.Name = "username" | |||
cookie.Value = "astaxie" | |||
httplib.Get("http://beego.me/").SetCookie(cookie) | |||
@ -1,62 +0,0 @@ | |||
{{template "base/head" .}} | |||
{{template "base/navbar" .}} | |||
{{template "repo/nav" .}} | |||
{{template "repo/toolbar" .}} | |||
<div id="body" class="container"> | |||
{{template "repo/setting_nav" .}} | |||
<div id="repo-setting-container" class="col-md-10"> | |||
{{template "base/alert" .}} | |||
<form id="repo-hooks-add-form" action="{{.RepoLink}}/settings/hooks/add" method="post"> | |||
{{.CsrfTokenHtml}} | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
Add Webhook | |||
</div> | |||
<div class="panel-body"> | |||
<div class="col-md-7"> | |||
<p>We’ll send a POST request to the URL below with details of any subscribed events.</p> | |||
<hr/> | |||
<div class="form-group"> | |||
<label for="payload-url">Payload URL</label> | |||
<input id="payload-url" name="url" class="form-control" type="url" required="required"/> | |||
</div> | |||
<div class="form-group"> | |||
<label for="content-type">Content type</label> | |||
<select id="content-type" name="content_type" class="form-control"> | |||
<option value="1">application/json</option> | |||
</select> | |||
</div> | |||
<div class="form-group"> | |||
<label for="payload-secret">Secret</label> | |||
<input id="payload-secret" name="secret" class="form-control" type="text"/> | |||
</div> | |||
<hr/> | |||
<div class="form-group"> | |||
<label>Which events would you like to trigger this webhook?</label> | |||
<div class="radio"> | |||
<label> | |||
<input class="form-control" name="push_only" type="radio" checked name="trigger"/> Just the <i>push</i> event. | |||
</label> | |||
</div> | |||
</div> | |||
<hr/> | |||
<div class="form-group"> | |||
<label> | |||
<input type="checkbox" name="active" checked/> Active | |||
</label> | |||
<p class="help-block">We will deliver event details when this hook is triggered.</p> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="panel-footer"> | |||
<button class="btn btn-success">Add Webhook</button> | |||
</div> | |||
</div> | |||
</form> | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@ -1,72 +0,0 @@ | |||
{{template "base/head" .}} | |||
{{template "base/navbar" .}} | |||
{{template "repo/nav" .}} | |||
{{template "repo/toolbar" .}} | |||
<div id="body" class="container"> | |||
{{template "repo/setting_nav" .}} | |||
<div id="repo-setting-container" class="col-md-10"> | |||
{{template "base/alert" .}} | |||
<form id="repo-hooks-edit-form" action="{{.RepoLink}}/settings/hooks/{{.Webhook.Id}}" method="post"> | |||
{{.CsrfTokenHtml}} | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
Manage Webhook | |||
</div> | |||
<div class="panel-body"> | |||
<div class="col-md-7"> | |||
<p>We’ll send a POST request to the URL below with details of any subscribed events.</p> | |||
<hr/> | |||
<div class="form-group"> | |||
<label for="payload-url">Payload URL</label> | |||
<input id="payload-url" name="url" class="form-control" type="url" required="required" value="{{.Webhook.Url}}" /> | |||
</div> | |||
<div class="form-group"> | |||
<label for="payload-version">Content type</label> | |||
<select id="content-type" name="content_type" class="form-control"> | |||
<option value="1">application/json</option> | |||
</select> | |||
</div> | |||
<div class="form-group"> | |||
<label for="payload-secret">Secret</label> | |||
<input id="payload-secret" name="secret" class="form-control" type="text" value="{{.Webhook.Secret}}" /> | |||
</div> | |||
<hr/> | |||
<div class="form-group"> | |||
<label>Which events would you like to trigger this webhook?</label> | |||
<div class="radio"> | |||
<label> | |||
<input class="form-control" name="push_only" type="radio" {{if .Webhook.HookEvent.PushOnly}}checked {{end}}name="trigger"/> Just the <i>push</i> event. | |||
</label> | |||
</div> | |||
</div> | |||
<hr/> | |||
<div class="form-group"> | |||
<label> | |||
<input type="checkbox" name="active" {{if .Webhook.IsActive}}checked{{end}}/> Active | |||
</label> | |||
<p class="help-block">We will deliver event details when this hook is triggered.</p> | |||
</div> | |||
</div> | |||
</div> | |||
<div class="panel-footer"> | |||
<button class="btn btn-primary">Update Webhook</button> | |||
<a type="button" href="{{.RepoLink}}/settings/hooks?remove={{.Webhook.Id}}" class="btn btn-danger">Delete Webhook</a> | |||
</div> | |||
</div> | |||
</form> | |||
<div class="panel panel-default"> | |||
<div class="panel-heading"> | |||
<h3 class="panel-title">Recent Deliveries</h3> | |||
</div> | |||
<div class="panel-body"> | |||
Coming soon | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
{{template "base/footer" .}} |
@ -0,0 +1,68 @@ | |||
{{template "ng/base/head" .}} | |||
{{template "ng/base/header" .}} | |||
<div id="repo-wrapper"> | |||
{{template "repo/header" .}} | |||
<div id="setting-wrapper" class="main-wrapper"> | |||
<div id="repo-setting" class="container clear"> | |||
{{template "repo/settings/nav" .}} | |||
<div class="grid-4-5 left"> | |||
<div class="setting-content"> | |||
{{template "ng/base/alert" .}} | |||
<div id="setting-content"> | |||
<div id="repo-hooks-panel" class="panel panel-radius"> | |||
<div class="panel-header"> | |||
<strong>{{if .PageIsSettingsHooksNew}}{{.i18n.Tr "repo.settings.add_webhook"}}{{else}}{{.i18n.Tr "repo.settings.update_webhook"}}{{end}}</strong> | |||
</div> | |||
<form class="form form-align panel-body" id="repo-setting-form" action="{{.RepoLink}}/settings/hooks/{{if .PageIsSettingsHooksNew}}new{{else}}{{.Webhook.Id}}{{end}}" method="post"> | |||
{{.CsrfTokenHtml}} | |||
<div class="text-center panel-desc">{{.i18n.Tr "repo.settings.add_webhook_desc" | Str2html}}</div> | |||
<div class="field"> | |||
<label class="req" for="payload-url">{{.i18n.Tr "repo.settings.payload_url"}}</label> | |||
<input class="ipt ipt-large ipt-radius {{if .Err_UserName}}ipt-error{{end}}" id="payload-url" name="payload_url" type="url" value="{{.Webhook.Url}}" required /> | |||
</div> | |||
<div class="field"> | |||
<label class="req">{{.i18n.Tr "repo.settings.content_type"}}</label> | |||
<select name="content_type"> | |||
<option value="1" {{if or .PageIsSettingsHooksNew (eq .Webhook.ContentType 1)}}selected{{end}}>application/json</option> | |||
<option value="2" {{if eq .Webhook.ContentType 2}}selected{{end}}>application/x-www-form-urlencoded</option> | |||
</select> | |||
</div> | |||
<div class="field"> | |||
<label for="secret">{{.i18n.Tr "repo.settings.secret"}}</label> | |||
<input class="ipt ipt-large ipt-radius {{if .Err_UserName}}ipt-error{{end}}" id="secret" name="secret" type="password" value="{{.Webhook.Secret}}" autocomplete="off" /> | |||
</div> | |||
<div class="field"> | |||
<h4 class="text-center">{{.i18n.Tr "repo.settings.event_desc"}}</h4> | |||
<label></label> | |||
<input name="push_only" type="radio" {{if or .PageIsSettingsHooksNew .Webhook.PushOnly}}checked{{end}}> {{.i18n.Tr "repo.settings.event_push_only" | Str2html}} | |||
</div> | |||
<div class="field"> | |||
<label for="active">{{.i18n.Tr "repo.settings.active"}}</label> | |||
<input class="ipt-chk" id="active" name="active" type="checkbox" {{if or .PageIsSettingsHooksNew .Webhook.IsActive}}checked{{end}} /> | |||
<span>{{.i18n.Tr "repo.settings.active_helper"}}</span> | |||
</div> | |||
<div class="field"> | |||
<label></label> | |||
<button class="btn btn-green btn-large btn-radius">{{if .PageIsSettingsHooksNew}}{{.i18n.Tr "repo.settings.add_webhook"}}{{else}}{{.i18n.Tr "repo.settings.update_webhook"}}{{end}}</button> | |||
{{if .PageIsSettingsHooksEdit}}<a class="btn btn-red btn-large btn-link btn-radius" href="{{.RepoLink}}/settings/hooks?remove={{.Webhook.Id}}"><strong>{{.i18n.Tr "repo.settings.delete_webhook"}}</strong></a>{{end}} | |||
</div> | |||
</form> | |||
</div> | |||
</div> | |||
<br> | |||
<div id="setting-content"> | |||
<div id="repo-hooks-history-panel" class="panel panel-radius"> | |||
<div class="panel-header"> | |||
<strong>{{.i18n.Tr "repo.settings.recent_deliveries"}}</strong> | |||
</div> | |||
<ul class="panel-body setting-list"> | |||
<li>Coming soon!</li> | |||
</ul> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
</div> | |||
{{template "ng/base/footer" .}} |