FTP

模拟 331 Username OK, Need Password 响应

User name okay, need password. The server recognized the username and is waiting for the corresponding password to complete authentication.

查看完整参考 →

1 HTTP 响应

HTTP 响应
HTTP/1.1 331 Username OK, Need Password
Content-Type: application/json
Date: Tue, 25 Feb 2026 12:00:00 GMT

2 使用 curl 测试

terminal
curl -i https://httpbin.org/status/331

3 在您的框架中返回 331 Username OK, Need Password

django
from django.http import HttpResponse


def my_view(request):
    return HttpResponse(status=331)  # Username OK, Need Password
flask
from flask import Flask

app = Flask(__name__)


@app.route("/endpoint")
def my_endpoint():
    return "", 331  # Username OK, Need Password
fastapi
from fastapi import FastAPI
from fastapi.responses import Response

app = FastAPI()


@app.get("/endpoint")
def my_endpoint():
    return Response(status_code=331)  # Username OK, Need Password
express.js
// Express.js
app.get('/endpoint', (req, res) => {
  res.sendStatus(331); // Username OK, Need Password
});
spring boot
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;

@RestController
public class MyController {

    @GetMapping("/endpoint")
    public ResponseEntity<Void> myEndpoint() {
        return ResponseEntity
            .status(331) // Username OK, Need Password
            .build();
    }
}
go net/http
package main

import "net/http"

func myHandler(w http.ResponseWriter, r *http.Request) {
    w.WriteHeader(331) // Username OK, Need Password
}
ruby on rails
class MyController < ApplicationController
  def my_action
    head :username_ok,_need_password
  end
end
asp.net core
// ASP.NET Core Minimal API
app.MapGet("/endpoint", () =>
    Results.StatusCode(331) // Username OK, Need Password
);

更多 FTP 模拟页面