Kerberos only works if the client can get a "ticket" and the two main requirements for getting a ticket are:
However, the hostname "localhost", which appears to be what you're using in this case, is not a permitted SPN as it is not actually a DNS hostname (it is a name interpreted by your local OS). Similarly an IP address cannot have a corresponding SPN.
Short Answer: If you use "localhost" as the hostname, the client will not initiate Kerberos and fallback to NTLM.
PS: If you actually care about security, you MUST use HTTPS (even for Kerberos).