India joined the overwhelming Assembly majority to vote for the resolution that demands that the US comply comply with Security Council decisions against changing the status of Jerusalem.
Defying Trump's threats to cut off aid to countries that voted for the resolution, 128 countries voted for the resolution, while nine countries joined the US and Israel in voting against it.
An unusually large number - 35 countries - abstained, showing that Trump's threats had some effect.
The resolution was sponsored by Yemen on behalf of the Arab Group in the UN, and by Turkey on behalf of the Organisation of Islamic Cooperation.
It followed the US veto on Monday of a similar resolution in the Security Council introduced by Egypt.
While the Assembly resolutions do not have the legal clout of the Council resolutions, they carry political clout.
Both sides - the US against the Assembly resolution and Islamic and Arab countries for it - mounted a strong campaign.