Class: WeixinRailsMiddleware::SinglePublicAccount

Inherits:
WexinAdapter
  • Object
show all
Defined in:
lib/weixin_rails_middleware/adapter/single_public_account.rb

Instance Attribute Summary

Attributes inherited from WexinAdapter

#echostr, #nonce, #signature, #timestamp, #weixin_secret_key

Instance Method Summary collapse

Methods inherited from WexinAdapter

decode64, error_msg, init_with, #initialize, #is_signature_valid?

Methods included from ConfigurationHelpers

#custom_adapter, #token_model, #token_model_class

Constructor Details

This class inherits a constructor from WeixinRailsMiddleware::WexinAdapter

Instance Method Details

#check_weixin_legalityObject



5
6
7
8
# File 'lib/weixin_rails_middleware/adapter/single_public_account.rb', line 5

def check_weixin_legality
  return render_authorize_result if !is_weixin_secret_key_valid?
  super
end

#current_weixin_public_accountObject



18
19
20
21
22
23
24
25
26
27
28
29
# File 'lib/weixin_rails_middleware/adapter/single_public_account.rb', line 18

def 
  @current_weixin_public_account ||= OpenStruct.new(
                  weixin_secret_string: self.class.weixin_secret_string,
                  weixin_token_string: self.class.weixin_token_string,
                  app_id: self.class.app_id)
  @current_weixin_public_account.instance_eval do
    def aes_key
      WexinAdapter.decode64(WexinAdapter.encoding_aes_key)
    end
  end
  @current_weixin_public_account
end

#current_weixin_tokenObject



14
15
16
# File 'lib/weixin_rails_middleware/adapter/single_public_account.rb', line 14

def current_weixin_token
  self.class.weixin_token_string
end

#error_msgObject



31
32
33
# File 'lib/weixin_rails_middleware/adapter/single_public_account.rb', line 31

def error_msg
  "#{__FILE__}:#{__LINE__}: Weixin secret string NotMatch."
end

#is_weixin_secret_key_valid?Boolean

Returns:

  • (Boolean)


10
11
12
# File 'lib/weixin_rails_middleware/adapter/single_public_account.rb', line 10

def is_weixin_secret_key_valid?
  weixin_secret_key == self.class.weixin_secret_string
end