2017-06-02 99 views
0

我剛剛在我的硬盤驅動器上安裝了cURL以便用於使用本地主機進行測試(在命令提示符下)。但是我無法連接到任何端口。你可以看到目錄和我下面的輸入:無法在命令提示符上使用cURL連接到本地主機

C:\用戶\我\捲曲\ SRC>捲曲-v http://localhost:9000

這給了我:

  • 改建URL to:http://localhost:9000/
  • 不支持名稱查詢超時
  • Trying :: 1 ...
  • TCP_NODELAY設置
  • 試圖127.0.0.1 ...
  • TCP_NODELAY設置
  • 連接:: 1個端口9000失敗:連接被拒絕
  • 連接到127.0.0.1端口9000失敗:連接被拒絕
  • 無法連接到本地主機端口9000:連接被拒絕
  • 截止連接0捲曲:(7)無法連接到本地主機端口9000:連接被拒絕

也許我應該補充說我正在使用IntelliJ並且已經在硬盤上啓用cURL(允許我從任何目錄訪問它);促使我嘗試以下方法:

C:\用戶\我\斯卡拉\玩\我的項目>捲曲-v http://localhost:9000/

返回:

  • 超時不支持名稱查詢
  • Trying :: 1 ...
  • TCP_NODELAY設置
  • 連接:: 1個端口9000失敗:連接被拒絕
  • 試圖127.0.0.1 ...
  • TCP_NODELAY設置
  • 連接到127.0.0.1端口9000失敗:連接被拒絕
  • 無法連接到本地主機端口9000:連接被拒絕
  • 截止連接0捲曲:(7)無法連接到本地主機端口9000:連接被拒絕

所以看起來9000端口沒有打開。我現在認爲這需要配置在intelliJ - here - 但這看起來好像它只支持終極版。這可能是我遇到的問題的原因。這可能對其他人有所幫助,但如果任何人有更多的信息,確定這一點很好。

+0

有沒有人聽這個端口 – Jens

+0

我正在IntelliJ做一些scala編程,我認爲這是如何聆聽/連接到端口。我有這個錯嗎? –

+0

問題是沒有人在端口9000上進行監聽。您需要從另一個程序(您的服務器)打開一個套接字並在那裏開始監聽。否則,您的機器會嘗試連接到自己的第9000端口,但由於沒有人說「我在聽」,因此它會顯示「連接被拒絕」。 –

回答

0

這意味着您的應用程序尚未啓動(所以它實際上沒有偵聽端口9000)

您應該添加一個運行在IntelliJ中配置(Run>Edit Configurations>+>Play 2 App)並在執行卷曲調用之前運行它。

另一種啓動應用程序的方法是在項目文件夾中打開一個終端,然後運行sbt run

+0

最簡單的解決方案是最好的解決方案。我實際上認爲IntelliJ在運行時會聽到(預先指定的)端口,但事實並非如此。對我來說,這是從你提到的IntelliJ Terminal完成的。感謝那 :} –

0

試試下面的服務器代碼在運行curl

import java.net._ 
import java.io._ 
import scala.io._ 

val server = new ServerSocket(9000) 
while (true) { 
    val serv = server.accept() 

    val in = new BufferedSource(serv.getInputStream()).getLines() 
    val out = new PrintStream(serv.getOutputStream()) 

    out.println(in.next()) 
    out.flush() 
    serv.close() 
} 
+0

謝謝。不知道你打算放哪。在IntelliJ中運行它? –

+0

是的,你應該運行在Intellij –

+0

所以我跑了這個,改變了一些東西,但是當在_Command提示符處輸入'curl -n http:// localhost:9000 /'時,我回到** GET/HTTP/1.1 **而不是頁面標記。雖然似乎接近.. –

相關問題