The healthiest thing to do would be to drink a lot of water and maybe something with a lot of electrolytes in it as hangovers are caused largely due to dehydration. However, if you're looking for a drug to take that pain away I would imagine that benzodiazepines would work rather well-probably better than opiates. IME opiates can often make a headache/migraine worse, and amphetamines would likely mask the pain of a hangover, but they are notorious for causing dehydration as well (though this is the case with opiates and probably benzos too, but to a lesser degree-correct me if I'm wrong though). I've always found that benzodiazepines and even z-drugs strangely enough (not that you'd want to be taking lunesta or ambien in the morning by any means-Christ, even at night it's not always a great idea) to reduce a lot of the pain I used to get from hangovers and still get from migraines.
Really though, a hangovers not a good reason to start using different drugs-though I could understand doing so in some clinch position where you have a lot of things to do and need to get up early that day.