当前位置: 首页 > 知识库问答 >
问题:

访问本地主机laravel应用程序路由到android studio失败

鄢承运
2023-03-14

我正在android Studio3中开发一个android应用程序,它的背面是laravel。对于本地服务器,我由artizan创建了一个虚拟服务器。现在的问题是将本地服务器(127.0.0.1:8000)连接到android,为此,我在下面的界面中尝试了太多baseUrl,如:

10.0.2.2:8008,10.0.3.2:8000, IP4,:/

接口:

interface ApiInterface {

    @GET("stocks.json")
    fun getStocks(): Call<StockResponse>

    companion object {
        val BASE_URL = "http://192.168.1.106:8000/api/"

        fun getClient(): ApiInterface{
            val retrofit = Retrofit.Builder()
                    .baseUrl(BASE_URL)
                    .addConverterFactory(GsonConverterFactory.create())
                    .build()

            return retrofit.create(ApiInterface::class.java)
        }
    }
}

最后,我尝试了这个项目的外部服务器,它的工作,但对于本地它没有,所以伙计,我将不胜感激,如果你解决这个令人心烦意乱的问题...

更新:伙计们,谢谢你们的回复,我真的尝试了很多方法,最后,我发现在android studio中laravel api路由失败,并且没有建立,这意味着:

http://192.168.1.106:8000/file.json  (Worked-> specific file in local server )
http://192.168.1.106:8000/api/file  (Not Worked-> laravel route api)

共有3个答案

广昊昊
2023-03-14

我从这里找到的:D
首先,您不能使用val BASE\u URL=“http://[ip\u add]:[port]/api/”
将其更改为如下内容:
私有静态最终字符串BASE\u URL=”http://my_ip_address/path/to/project/folder/relative/to/server/root“
所以,它是这样的:

private static final String BASE_URL = "http://[my_ip_address]:[port]/[project_folder_name]/public/api/"


就这样;)。。。希望有帮助!

澹台华翰
2023-03-14

我不确定artisan Web服务器是否会侦听本地主机外部的任何请求。您可以将其配置为这样的行为。或者,您可以通过Apache或Nginx在本地托管Laravel项目,并将Web服务器配置为接受来自本地网络的连接。

https://stackoverflow.com/a/24011132/9776011

https://serverfault.com/a/667800

高砚
2023-03-14

我有一个php lumen项目,我开始时通常使用这个命令'php-S localhost:8000-t public',这对post man来说没问题,因为我的url是“http://localhost:8000/api/v1/login"

在我的Android部分,我的基本url是“http://myip:8000/api/v1/login“但是它不能连接到本地服务器并全面调用onFailour方法,而抛出ecxeption的方法不能连接到服务器“。然后它开始给出响应。警告:1.两个设备必须连接到相同的wifi网络2.若要查找您的ip,请转到运行类型cmd,然后在控制台类型ipconfig中单击enter

 类似资料:
  • 2017-05-20 15:23:31+0200:env:{“rack.version”=>[1,3],“rack.errors”=>#>,“rack.multithread”=>true,“rack.multiprocess”=>false,“rack.run_once”=>false,“script_name”=>>“query_string”=>>“http/1.1”,“server_sof

  • 问题内容: 我在SO和不同的博客上都看到了数十个问题,这些问题都用“答案”来讨论-都无济于事。 我的本地机器(Ubuntu 16.04)上有一个React.js应用程序。在本地,我尝试通过运行对其进行测试,然后它将浏览器打开到http:// localhost:3000。 在一页上,我试图访问共享托管服务器上的PHP api。 Chrome和Firefox都说由于服务器没有失败。 确切消息: 但是

  • 我已经部署了一个运行在OpenShift Origin上的grpc服务。这是由OpenShift服务支持的。该服务通过OpenShift路由公开。我正在尝试通过一个服务和路线将集装箱港口(50051)映射到8080港的外部世界,从而使这个吊舱可用。 服务试图公开的映像在其Dockerfile中具有: 路线如下: 服务端口:8080/TCP 目标端口:50051 在DeploymentConfig中

  • 我已经在远程服务器上安装了tomcat 9,启动后,它运行良好,我可以访问http://host_name:port_num并查看tomcat hello页面。但是,当我尝试打开manager应用程序以查看我部署的应用程序时,我的403访问被拒绝,我已经在tomcat用户xml中添加了如下角色: 我看到的错误消息是: 默认情况下,只能从与Tomcat运行在同一台机器上的浏览器访问主机管理器。如果要

  • 如何将运行在Docker中的spring boot(JAR)应用程序连接到计算机上的MySql服务器?[我试过不同的帖子,但都没用] 在我的spring boot'Application.Properties'中,我有: 我尝试了许多选择: 但是,唉,我无法连接到MySql服务器。Hibernate失败。在我的CAAS提供程序上,这一切都运行良好--当然,使用已知的容器名称。 我的Dockerfi

  • 我有一个问题,基本上是关于OpenShift Origin路线的澄清。 我设法在本地VMWare安装的CentOS上设置OpenShift Origin版本1.4.0-rc1。我还能够为 nginx 拉取和设置映像,pod 状态显示正在运行。也能够在服务endpoint上访问nginx。现在,根据文档,如果我想在托管系统之外访问此nginx实例,我需要创建一个路由,我也这样做了。 混乱出现在Ope