China can't buy oil from Iran that they physically can't get (due to the US blockade). If they want to buy oil from other non-Iranian nations though I say let them! Oil is a global market; every barrel China buys from that section of the Middle East is a barrel they're not buying somewhere else, driving up the price. We could even let them re-flag a bunch of oil tankers under the banner of China and restart global oil trade to the Persian Gulf tomorrow. China would benefit from that of course, but unless they decide to invade Taiwan tomorrow or something I don't see a problem with that. Not like it helps Iran at all (again, this is all provided China isn't somehow aiding them in the war, otherwise the US blocking their ships seems justifiable to me).
Meanwhile, every other nation in the world with a navy should be putting pressure on Iran to stop blocking their ships.