代码之家  ›  专栏  ›  技术社区  ›  Tessy Thomas

长生不老药中的密码异常

  •  1
  • Tessy Thomas  · 技术社区  · 7 年前

    (退出)引发了异常: **(ArgumentError)参数错误 <&书信电报;48、70、98、86、85、68、57、56、0、0、0、1>>) (加密)加密。erl:925:crypto.hmac/6 (plug)lib/plug/crypto/key\ u generator.ex:50:plug.crypto.KeyGenerator.with\ u cache/3 (plug)lib/plug/session.ex:75:plug.session.fetch\u session/1中的匿名fn/5 (plug)lib/plug/debugger.ex:195:plug.debugger.maybe\u fetch\u session/1 (plug)lib/plug/debugger.ex:150:plug.debugger.render/6 (plug)lib/plug/debugger.ex:129:plug.debugger。 /5 (myapp)lib/myapp\u web/endpoint.ex:1:MyAppWeb.endpoint.call/2

    以下是lib/my\u app\u web/endpoint.ex的内容。

    defmodule MyAppWeb.Endpoint do
      use Phoenix.Endpoint, otp_app: :my_app
    
      socket "/socket", MyAppWeb.UserSocket
    
      # Serve at "/" the static files from "priv/static" directory.
      #
      # You should set gzip to true if you are running phoenix.digest
      # when deploying your static files in production.
      plug Plug.Static,
        at: "/", from: :my_app, gzip: false,
        only: ~w(css fonts images js favicon.ico robots.txt)
    
      # Code reloading can be explicitly enabled under the
      # :code_reloader configuration of your endpoint.
      if code_reloading? do
        socket "/phoenix/live_reload/socket", Phoenix.LiveReloader.Socket
        plug Phoenix.LiveReloader
        plug Phoenix.CodeReloader
      end
    
      plug Plug.RequestId
      plug Plug.Logger
    
      plug Plug.Parsers,
        parsers: [:urlencoded, :multipart, :json, Absinthe.Plug.Parser],
        pass: ["*/*"],
        json_decoder: Poison
    
      plug Plug.MethodOverride
      plug Plug.Head
    
      # The session will be stored in the cookie and signed,
      # this means its contents can be read but not tampered with.
      # Set :encryption_salt if you would also like to encrypt it.
      plug Plug.Session,
        store: :cookie,
        key: "_my_app_key",
        signing_salt: "0FbVUD98"
    
      plug MyAppWeb.Router
    
      @doc """
      Callback invoked for dynamically configuring the endpoint.
    
      It receives the endpoint configuration and checks if
      configuration should be loaded from the system environment.
      """
      def init(_key, config) do
        if config[:load_from_system_env] do
          port = System.get_env("PORT") || raise "expected the PORT environment variable to be set"
          {:ok, Keyword.put(config, :http, [:inet6, port: port])}
        else
          {:ok, config}
        end
      end
    end
    

    1 回复  |  直到 7 年前
        1
  •  3
  •   chris    7 年前

    (exit) an exception was raised: ** (ArgumentError) argument error (crypto) :crypto.hmac_nif(:sha256, {:system, "Zpumk6KLEY8Qx826qspHhYrpTpDswFzHL/64aJWqhPyYZQWbV3hWq+nUIPQRMwLn"}, <<48, 70, 98, 86, 85, 68, 57, 56, 0, 0, 0, 1>>) (crypto) crypto.erl:925: :crypto.hmac/6 (plug) lib/plug/crypto/key_generator.ex:64: Plug.Crypto.KeyGenerator.generate/7 (plug) lib/plug/crypto/key_generator.ex:50: Plug.Crypto.KeyGenerator.with_cache/3 (plug) lib/plug/session/cookie.ex:88: Plug.Session.COOKIE.get/3 lib/plug/adapters/cowboy/handler.ex:15: Plug.Adapters.Cowboy.Handler.upgrade/4

    您的错误日志与 Plug.Session.COOKIE

    医生说,

    似乎你没有在你的代码中做这部分。