http_client.go 726 B

123456789101112131415161718192021222324252627282930313233343536
  1. package real
  2. import (
  3. "net"
  4. "net/http"
  5. "net/url"
  6. "time"
  7. "github.com/langgenius/dify-plugin-daemon/internal/core/dify_invocation"
  8. )
  9. func NewDifyInvocationDaemon(base string, calling_key string) (dify_invocation.BackwardsInvocation, error) {
  10. var err error
  11. invocation := &RealBackwardsInvocation{}
  12. baseurl, err := url.Parse(base)
  13. if err != nil {
  14. return nil, err
  15. }
  16. client := &http.Client{
  17. Transport: &http.Transport{
  18. Dial: (&net.Dialer{
  19. Timeout: 5 * time.Second,
  20. KeepAlive: 120 * time.Second,
  21. }).Dial,
  22. IdleConnTimeout: 120 * time.Second,
  23. },
  24. }
  25. invocation.dify_inner_api_baseurl = baseurl
  26. invocation.client = client
  27. invocation.dify_inner_api_key = calling_key
  28. return invocation, nil
  29. }