conninfo.js 610 B

123456789101112131415161718192021222324
  1. // src/adapter/aws-lambda/conninfo.ts
  2. var getConnInfo = (c) => {
  3. const requestContext = c.env.requestContext;
  4. let address;
  5. if ("identity" in requestContext && requestContext.identity?.sourceIp) {
  6. address = requestContext.identity.sourceIp;
  7. } else if ("http" in requestContext && requestContext.http?.sourceIp) {
  8. address = requestContext.http.sourceIp;
  9. } else {
  10. const xff = c.req.header("x-forwarded-for");
  11. if (xff) {
  12. const ips = xff.split(",");
  13. address = ips[ips.length - 1].trim();
  14. }
  15. }
  16. return {
  17. remote: {
  18. address
  19. }
  20. };
  21. };
  22. export {
  23. getConnInfo
  24. };