gpt4 book ai didi

url - Open ID 端点转发不起作用

转载 作者:行者123 更新时间:2023-11-28 23:52:27 25 4
gpt4 key购买 nike

我是 Open Id 开发的新手。我已经从互联网上下载了 openid4java 示例应用程序并尝试在我的应用程序中实现它。直到现在我已经编写了代码以在发现后点击打开 id 端点。它一直工作到发现.但是在那之后,当试图到达终点 URI 时,我收到 404 错误,因为它也附加了我的项目 URL 路径。例如:

/Openid/http:/www.myopenid.com/server.(这里Openid是我的项目名)

这是我的 servlet:

package com.openid.registration;

import java.io.IOException;

import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.openid4java.discovery.DiscoveryInformation;
import org.openid4java.message.AuthRequest;

public class OpenIdRegistrationServlet extends HttpServlet
{
private static final long serialVersionUID = 1L;
private String returnToUrl;
RequestDispatcher rd = null;

protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
HttpSession session=request.getSession(false);
String OpenID=request.getParameter("openid");
System.out.println("Open ID entered by the user"+OpenID);
// Delegate to Open ID code
DiscoveryInformation discoveryInformation = RegistrationService.performDiscoveryOnUserSuppliedIdentifier(OpenID);
// Store the disovery results in session.
System.out.println("OPEnd Point"+discoveryInformation.getOPEndpoint());
session.setAttribute("discoveryInformation", discoveryInformation);
// Create the AuthRequest
returnToUrl=RegistrationService.getReturnToUrl();
AuthRequest authRequest = RegistrationService.createOpenIdAuthRequest(discoveryInformation, returnToUrl);
rd = request.getRequestDispatcher(authRequest.getDestinationUrl(true));
System.out.println("Destination URL:"+authRequest.getDestinationUrl(true));
rd.forward(request, response);

}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request,response);
// TODO Auto-generated method stub
}

/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
processRequest(request,response);
// TODO Auto-generated method stub
}

我已经在 tomcat 5 中部署了我的应用程序。是否有任何方法可以从 URL 中删除我的项目名称,或者我是否需要从 apache 网络服务器重定向?感谢任何帮助

最佳答案

这是我的错误。我已将 forward(request, response) 更改为 sendRedirect(authRequest.getDestinationUrl(true))。它开始工作正常。

关于url - Open ID 端点转发不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6561545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com