小编kai*_*ite的帖子

如何设置用于HTTP请求的IP?

我不知道是否可能因为std lib没有说明当前正在使用的地址:

http://golang.org/pkg/net/http/

resp, err := http.Get("http://example.com/")
if err != nil {
    // handle error
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
Run Code Online (Sandbox Code Playgroud)

我想要做的是设置该http请求的源地址,为什么?因为我不想将我的主要IP地址用于那种东西......

go

8
推荐指数
1
解决办法
3144
查看次数

无法通过监护人获得当前用户

我正在使用Guardian并尝试使用Canary但是,我似乎无法获取当前用户,canary需要conn.assigns中的current_user,我已经按照这个,如果我要求(在控制器操作内):

Guardian.Plug.authenticated?(conn)
Run Code Online (Sandbox Code Playgroud)

我明白了,但如果我这样做:

Guardian.Plug.current_resource(conn)
Run Code Online (Sandbox Code Playgroud)

它只是空白.

我在api管道中有这个代码:

pipeline :private_api do
  plug :accepts, ["json"]
  plug Guardian.Plug.LoadResource
  plug Guardian.Plug.VerifyHeader

  plug Guardian.Plug.EnsureAuthenticated, handler: SessionController
  plug MyApp.Plug.CurrentUser
end    
Run Code Online (Sandbox Code Playgroud)

并在MyApp.Plug.CurrentUser中

defmodule MyApp.Plug.CurrentUser do
  def init(opts), do: opts

  def call(conn, _opts) do
    current_user = Guardian.Plug.current_resource(conn)
    Plug.Conn.assign(conn, :current_user, current_user)
  end
end
Run Code Online (Sandbox Code Playgroud)

会话创建方法:

 def create(conn, %{"session" => session_params}) do
    case MyApp.Session.authenticate(session_params) do
      {:ok, user} ->
        {:ok, jwt, _full_claims} = user |> Guardian.encode_and_sign(:token)

        Plug.Conn.assign(conn, :current_user, user)

        conn
        |> put_status(:created)
        |> render("show.json", jwt: jwt, user: …
Run Code Online (Sandbox Code Playgroud)

elixir phoenix-framework

6
推荐指数
1
解决办法
1268
查看次数

JQuery与extend(减少对象)相反

我正面临下一个问题,我可以合并/扩展对象并且工作得很好,但是现在我需要做一个扩展对象的反义,JQuery doc:

var object1 = {
  apple: 0,
  banana: { weight: 52, price: 100 },
  cherry: 97
};
var object2 = {
  banana: { price: 200 },
  durian: 100
};

// Merge object2 into object1, recursively
$.extend( true, object1, object2 );

// Result
{"apple":0,"banana":{"weight":52,"price":200},"cherry":97,"durian":100}
Run Code Online (Sandbox Code Playgroud)

哪个很酷,而且效果很好,但是如何获得相反的操作,例如获得这样的输出:

{"apple":0,"banana":{"weight":52},"cherry":97}
Run Code Online (Sandbox Code Playgroud)

javascript jquery

4
推荐指数
1
解决办法
1676
查看次数

Polymer&google cloud端点转到后端

我正试图从聚合物1.0获取我的谷歌云终端所有设置和工作(后端和调度器上的appengine),但google-api-loader/google-client-loader(尝试两者)拒绝确认我的端点,谷歌api-loader没有任何事情发生就绪事件永远不会触发,谷歌客户端加载它确实但尝试获取此网址:

https://content.googleapis.com/discovery/v1/apis/jobs/v1/rest?fields=rootUrl%2CservicePath%2Cresources%2Cparameters%2Cmethods&pp=0
Run Code Online (Sandbox Code Playgroud)

哪个谷歌全球apis,而不是我的端点.

码:

<polymer-element name="job-service" attributes="jobs">                                                                                                                                                             
    <template>                                                                                                                                                                                                     
        <google-api-loader id="api" name="jobs" version="v1" appId="MyAppID" apiRoot="http://localhost:8082/_ah/api" root="http://localhost:8082/_ah/api">                                                                                                                                                               
        </google-api-loader>                                                                                                                                                                                    
    </template>                                                                                                                                                                                                    
    <script>                                                                                                                                                                                                                                                                                                                                                                                         
    Polymer({                                                                                                                                                                                         
        is: 'job-service',                                                                                                                                                                                         
        ready: function() {                                                                                                                                                                                        
            var setJobs = (function(data) {                                                                                                                                                                        
                this.jobs = data.result.jobs;                                                                                                                                                                      
            }).bind(this);                                                                                                                                                                                         

            this.$.api.addEventListener('google-api-load', (function() {                                                                                                                                           
                this.api = this.$.api.api;                                                                                                                                                                         
                this.api.getJobs().then(setJobs);                                                                                                                                                                  
            }).bind(this));                                                                                                                                                                                        
        },                                                                                                                                                                                                         
    });                                                                                                                                                                                                            
    </script>                                                                                                                                                                                                      
</polymer-element>             
Run Code Online (Sandbox Code Playgroud)

尝试更新google-apis以掌握没有变化.

这是我的bower.json:

{
  "name": "polymer-project",
  "dependencies": {
    "paper-header-panel": "PolymerElements/paper-header-panel#^1.0.0",
    "paper-item": "PolymerElements/paper-item#^1.0.0",
    "google-apis": "GoogleWebComponents/google-apis#master",
    "paper-icon-button": "PolymerElements/paper-icon-button#^1.0.0"
  }
}
Run Code Online (Sandbox Code Playgroud)

谢谢

google-app-engine google-cloud-endpoints polymer

2
推荐指数
1
解决办法
866
查看次数